强制刷新CSS文件

时间:2013-09-20 08:26:19

标签: android css webview

我有WebView从我的应用的私有数据中加载HTML文件。我从服务器加载这些文件,然后将它们保存到私有数据文件夹。它们带有JavaScript文件,CSS文件,图像等。所以我的WebView然后显示那些HTML文件就好了。

我的问题是当我修改服务器上这些文件的内容,然后在应用程序中再次下载这些文件时(首先我确保所有文件都从私有数据文件夹中删除)并打开WebView ,除CSS文件外,一切都更新,样式保持不变。我发现强制在WebView中更新CSS文件的最快解决方案是删除应用程序的所有内容(在设置中),然后再次下载文件。

注意:我不希望清除所有数据,例如历史记录或其他任何数据,因为我在WebView上使用本地存储,但是如果可能的话,清算资源很好。

2 个答案:

答案 0 :(得分:3)

如果可能,在调用时,在css文件名的末尾添加时间戳或唯一值。我在我的webapp中使用这个方法,虽然我使用php附加时间戳,我确定它可以在JS中使用JS也使用event.timeStamp来完成。

例如

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.0-alpha.2/jquery.mobile-1.4.0-alpha.2.min.css?timestamp=<? echo $timestamp?>">

希望这有帮助。

答案 1 :(得分:0)

我在myWebView中使用以下代码强制重新加载我的css文件:

myWebView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

WebSettings.LOAD_NO_CACHE强制从网络加载您的html文件。 Doc:“不要使用缓存,从网络加载。与setCacheMode(int)一起使用。”