WebView的onPause()无法正常工作

时间:2017-09-30 20:29:29

标签: android webview android-lifecycle

我在WebView扩展的活动中有AppCompatActivity,当我关闭/交换活动时,我试图在webview中停止音频播放,但它不起作用,声音一直在播放,在我的代码下面

public class PostDetailsActivity extends AppCompatActivity{
    WebView mArticleText;
    ...
    void loadDatatoWebView(String html){
        String base64 = Base64.encodeToString(html.getBytes(), Base64.DEFAULT);
        mArticleText.loadData(base64, "text/html; charset=utf-8", "base64");
        mArticleText.setWebViewClient(new WebViewClient(){
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                if (url != null) {
                    // open links in external browser
                    view.getContext().startActivity(
                            new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
                    return true;
                } else {
                    return false;
                }
            }


        });
    }

    @Override
    protected void onPause() {
        super.onPause();
        mArticleText.pauseTimers();
        mArticleText.onPause();
    }

    @Override
    protected void onResume() {
        super.onResume();
        mArticleText.onResume();
    }
} 

我尝试添加WebView.loadUrl("about:blank")并解决了播放问题,但引入了一些用户体验问题,当活动恢复时,webview必须再次加载,因为呈现可能需要一些时间,因此导致恼人的延迟。

0 个答案:

没有答案