【问题标题】:android WebView stop runningandroid WebView 停止运行
【发布时间】:2011-05-06 21:37:41
【问题描述】:

WebView 控件存在以下问题。 我的 webview 在 Activity 中定义如下:

public class MyWebView extends Activity {
private WebView webview;
...

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.mywebview);
    ...
    webview = new WebView(getApplicationContext());
    webview.setWebChromeClient(new WebChromeClient() {   ...   });
    webview.setWebViewClient(new WebViewClient() {   ...   });                
    ...
    webview.loadUrl("http://www.google.de");
}

一切正常,网页已打开。但是如果关闭活动(按下后退按钮)并返回我的主菜单,WebView 似乎没有关闭。 http-threads 继续运行。

如果我一个接一个地打开大约10几个页面,这些网页不是nonger loadet,而是在WebView中显示“网页不可用”。

怎么了?如何关闭 WebView?

webview.destroy();
webview = null;

例如不工作。

【问题讨论】:

    标签: android multithreading http webview


    【解决方案1】:

    这样做:

    在onPause()中调用webView.onPause(),在onResume()中调用webView.onResume()。

    【讨论】:

      【解决方案2】:

      试着看看这个,看看它是否是相同的问题和解决方案。

      How do I pause Flash content in an Android WebView when my activity isn't visible?

      【讨论】:

      • 感谢您的回答。我按照你告诉我的那样在 Activity 的 onPause() 中调用 webview.onPause,如下所示:Class.forName("android.webkit.WebView").getMethod("onPause",(Class[]) null)。调用(网络视图,(对象 [])空);但是 http 线程仍在运行。怎么了?
      • 请您使用上面链接中描述的解决方案发布一个最小示例的整个源代码吗?谢谢!
      • 问题似乎是 Emulator-Device 上的 RAM 较少。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多