Tôi có mã này hoạt động và vấn đề duy nhất với nó là nếu tôi rời khỏi WebView và thậm chí đóng ứng dụng và thậm chí nhấn nguồn trên điện thoại, âm thanh từ các podcast tiếp tục phát.Android - khi thoát khỏi WebView, âm thanh vẫn tiếp tục phát
Có ai biết cách dừng điều đó không?
Đây là mã:
public class PodcastsActivity extends BaseActivity //implements ActionBar.OnNavigationListener
{
WebView webview = null;
@Override
public void onCreate(Bundle savedInstanceState)
{
//setTheme(R.style.Theme_Sherlock_Light);
super.onCreate(savedInstanceState);
//setContentView(R.layout.podcasts);
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.setBuiltInZoomControls(true);
WebSettings webSettings = webview.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setBuiltInZoomControls(true);
//webSettings.getMediaPlaybackRequiresUserGesture();
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");
}
// public void onBackPressed ()
// {
// Class.forName("com.***.HTML5WebView").getMethod("onPause", (Class[]) null).
// invoke(html5WebView, (Object[]) null);
// }
@Override
public boolean onKeyDown(int keyCode, KeyEvent event)
{
if ((keyCode == KeyEvent.KEYCODE_BACK) && webview.canGoBack())
{
webview.goBack();
return true;
}
return super.onKeyDown(keyCode, event);
}
@Override
public void onStop()
{
super.onStop();
// your code
webview.clearView();
}
Tôi không chắc chắn nhưng chỉ cố gắng xóa bộ nhớ cache khi thoát. Trong 'onPause()': 'mWebView.clearCache (true); mWebView.getSettings(). setAppCacheEnabled (false); ' –
Thử ngay bây giờ - cảm ơn bạn. Sẽ báo cáo lại với những gì sẽ xảy ra trong một vài phút :) – Genadinik
Nó thực sự nói rằng super.onPageFinished (xem, url); không được xác định cho loại Hoạt động. Bạn có biết những gì cần phải được thực hiện để làm cho nó hoạt động? – Genadinik