Android 4.0.4中的HTML文件在服务器上修改后,WebView不会更改

时间:2012-10-04 19:39:26

标签: android html webview

当在服务器上修改html文件时,所做的更改会在Android 2.2版和Android版2.3.3中显示,但在Android 4.0.4版中则不会显示。例如,显示旧文本而不是新文本。

我的代码是:

public class MywebviewActivity extends Activity {

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
setContentView(R.layout.mywebview);
final Activity MywebviewActivity = this;        
  // Makes Progress bar Visible
  getWindow().setFeatureInt(Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);
  android.webkit.WebView wv = 
  (android.webkit.WebView)this.findViewById(R.id.myWebView); 
  wv.setWebChromeClient(new WebChromeClient() {     
  public void onProgressChanged(WebView view, int progress)   
  {
   //Make the bar disappear after URL is loaded, and changes string to Loading...
      MywebviewActivity.setTitle("Loading...");
      MywebviewActivity.setProgress(progress * 100); //Make the bar disappear after URL      is loaded

  // Return the app name after finish loading
  if(progress == 100)
      MywebviewActivity.setTitle(R.string.web_app_name);
    }
  });

  wv.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
  wv.getSettings().setJavaScriptEnabled(true);
  wv.setHorizontalScrollBarEnabled(false);
  wv.loadUrl("http://mypagename.com/android/server/app/ver10/page1.html");

}

public void onBackPressed() {
android.os.Process.killProcess(android.os.Process.myPid());
return;
}

2 个答案:

答案 0 :(得分:0)

在加载WebView之前尝试清除缓存:

...
android.webkit.WebView wv = (android.webkit.WebView)this.findViewById(R.id.myWebView);
wv.clearCache(true);
wv.setWebChromeClient(new WebChromeClient() {
...

http://developer.android.com/reference/android/webkit/WebView.html#clearCache(boolean

答案 1 :(得分:0)

尝试将WebViewSettings中的属性设置为不缓存数据:

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