0

我有最奇怪的错误。我正在运行这个确切的代码来播放一个流行的商业播客:

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

    WebView webview = new WebView(this);
    webview.getSettings().setAppCacheEnabled(false);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.setInitialScale(1);
    webview.getSettings().setPluginState(PluginState.ON);

    webview.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    });

    WebSettings webSettings = webview.getSettings();
    webSettings.setJavaScriptEnabled(true);
    webSettings.setBuiltInZoomControls(true);
    webSettings.setAllowContentAccess(true);
    webSettings.setEnableSmoothTransition(true);
    webSettings.setLoadsImagesAutomatically(true);
    webSettings.setLoadWithOverviewMode(true);
    webSettings.setSupportZoom(true);
    webSettings.setUseWideViewPort(true);

    setContentView(webview);
    webview.loadUrl("http://www.stitcher.com/podcast/entrepreneuronfirecom/entrepreneur-on-fire-tim-ferriss-other-incredible-entrepreneurs");           

它工作得很好,我可以播放播客,但问题是当我离开屏幕时,播客继续播放。

有谁知道需要做些什么来防止这种行为?

谢谢,亚历克斯

4

2 回答 2

3

myWebView.clearView()onStop()活动的情况下打电话。

当不再可见时,活动和因此 web 视图不一定会被破坏。这类似于在桌面上最小化浏览器。

查看活动生命周期以获取更多信息。

于 2013-07-13T14:47:33.420 回答
2

在 中执行某些onStop()操作,例如将空白页加载到 中WebView,或者调用clearView()它。

您看到的“错误”与桌面浏览器的行为方式没有什么不同。如果您在桌面浏览器中加载该 URL,然后切换到浏览器中的不同选项卡,或最小化浏览器窗口,则播客会继续播放。

于 2013-07-13T14:27:13.757 回答