Android: al salir de un WebView, el audio sigue reproduciéndose

Tengo este código que funciona y el único problema con él es que si dejo el WebView e incluso cerrar la aplicación, e incluso presionar la energía en el teléfono, el audio de los podcasts sigue jugando.

¿Alguien sabría cómo parar eso?

Aquí está el código:

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(); } 

Deberá llamar a través de la onPause() y onResume() de WebView onPause() onResume() de su actividad y onResume() , respectivamente.

Detiene cualquier procesamiento adicional asociado con este WebView y su DOM asociado, complementos, JavaScript, etc. Por ejemplo, si este WebView se extrae de la pantalla, podría llamarse para reducir el tráfico innecesario de la CPU o de la red. Cuando este WebView vuelva a estar "activo", llame a OnResume ().


También hay pauseTimers() , que afecta a todas las WebViews dentro de su aplicación:

Detiene todos los temporizadores de diseño, análisis y JavaScript para todas las WebView. Se trata de una solicitud global, no restringida a sólo este WebView. Esto puede ser útil si la aplicación se ha detenido.

  • Desplazar la vista web horizontalmente dentro de un ViewPager
  • Android: WebView shouldInterceptRequest no agregar RequestProperties en el WebView
  • El selector de archivos no funciona en Samsung Tab 3 Android 4.4
  • Agregar botón de actualización a la página de error - Webview
  • El video de youtube no se reproduce en android webview de iframe
  • Teclado Android que se superpone a los campos de entrada, la vista no se desplaza automáticamente
  • ¿Cómo hacer que una carga de WebView para Android sea más rápida?
  • Uncaught TypeError cuando se utiliza un JavascriptInterface
  • Documentación del puente JavaScript de WebView
  • ViewPager con WebView que permite pasar y no permitir el desplazamiento de WebView
  • ¿Cuáles son los valores de retorno válidos para una interfaz Javascript en un WebView de Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.