在我的Android应用程序中,我想在Webview
中打开一个网页。我要打开的网页也包含视频。为了实现此功能,我在我的应用程序中使用了WebChromeClient
。问题在于,OnBackPressed()
此活动,虽然我的Webview活动已完成,但有些视频并未停止播放并且仍在后台播放。我不知道为什么会这样。我尝试了各种代码,但无法解决这个问题。有些视频会自动停止播放,但有些视频会在后台播放。如何解决这个问题?
请帮我解决这个问题。
这是我的代码:
@Override
protected void onDestroy() {
super.onDestroy();
Log.e("Test HTML5:-", "onDestroy Called...");
mWebView.stopLoading();
// mWebView.clearCache(true);
// mWebView.clearHistory();
// mWebView.pauseTimers();
abc.removeView(mWebView);
mWebView.removeAllViews();
mWebView.destroy();
mWebView = null;
finish();
Intent i = new Intent(getApplicationContext(), MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
}
答案 0 :(得分:1)
在onPause()上编写此代码
@Override
protected void onPause() {
super.onPause();
Log.e("Test HTML5:-", "onDestroy Called...");
mWebView.reload();
Intent i = new Intent(getApplicationContext(), MainActivity.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);
}
答案 1 :(得分:1)
使用onBackPressed
@Override
public void onBackPressed() {
mWebView.stopLoading();
mWebView.removeAllViews();
mWebView.destroy();
mWebView = null;
finish();
super.onBackPressed();
}