如何禁用科尔多瓦的缓存android应用

问题描述:

我已经使用科尔多瓦3.6.3版本来建立我的android应用程序,我想在科尔多瓦webview中禁用URL缓存,我正在使用默认的cordova项目,使用index.html文件。 我试过,但它崩溃我的应用程序如何禁用科尔多瓦的缓存android应用

public class MyClass extends CordovaActivity 
{ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    mwebview=(WebView) findViewById(R.id.appView); 
    WebSettings ws=mwebview.getSettings(); 
    ws.setAppCacheEnabled(false); 
    ws.setCacheMode(WebSettings.LOAD_NO_CACHE); 
    // Set by <content src="index.html" /> in config.xml 
    loadUrl(launchUrl); 
    } 
} 
+0

您可能会发现这有帮助:http://*.com/questions/22221395/turn-off-caching-on-android-for-webapps –

+0

我试过这个,但我无法找到appView.getSettings( )在我的代码 – Nishant

+0

我已经在我的文章*享代码 – Nishant

我会建议您使用以下插件:

https://github.com/moderna/cordova-plugin-cache

document.addEventListener('deviceready', onDeviceReady); 
function onDeviceReady() { 
    var success = function(status) { 
     alert('Message: ' + status); 
    } 
    var error = function(status) { 
     alert('Error: ' + status); 
    } 
    window.cache.clear(success, error); 
} 

这将清除您的应用程序每次你启动缓存它。

您可以在回调中评论警报。

+0

但我想禁用创建缓存 – Nishant

+0

也许这就是你想要的:https://github.com/wongatech/cordova-disable-nsurl-cache –

+0

但是这是用于IOS的。我需要它为Android – Nishant

Cordova(由于运行在webview之上)尊重nocache头,如果你能够在你的服务器中设置它,它应该给你相同的结果。另外,您可以通过过期等来控制缓存本身的使用。

科尔多瓦 - 禁用 - HTTP缓存

科尔多瓦插件HTTP请求和响应的完全禁用缓存。

在科尔多瓦CLI只需键入以下命令:

cordova plugin add cordova-disable-http-cache 

它将取出通过NPM插件“科尔多瓦 - 禁用 - HTTP缓存”和安装“科尔多瓦 - 禁用 - HTTP缓存”的机器人。

它解决了我的应用程序中禁用缓存的问题。 我的科尔多瓦版本是6.5.0。