2015-10-13 8 views
1

Когда я воспроизвожу видео в андроид-браузере, он отлично работает, но когда я нажимаю кнопку «Назад» или «домашний ключ», но не останавливает звук. он играет в фоновом режиме.Как остановить воспроизведение звука в фоновом режиме в Android-браузере

Когда я удаляю приложение из последних приложений, этот звук останавливается, иначе он воспроизводится в фоновом режиме.

Я пробую все решение, приведенное в ссылке ниже. но никто не работает на меня. http://devsolvd.com/questions/how-to-stop-youtube-video-playing-in-android-webview

Эта проблема не встречается в Android 4.1 В андроиде 4.4.2 (Kitkat) webview воспроизводит звук в фоновом режиме.

Мой код

@Override 
    protected void onResume() 
    { 
     // TODO Auto-generated method stub 
     super.onResume(); 

     if (onResumeCall) 
     { 
      webView.onResume(); 
      setContentsData(); 

      if (contentHolders.size() > 0) 
       selectItem(currentIndex, 0, FIRST_PAGE); 
     } 



     onResumeCall = true; 
     //webView.onResume(); 
     Log.i("OnREsume", "OnREsume"); 


    } 

@Override 
    protected void onPause() { 
     // TODO Auto-generated method stub 
     super.onPause(); 
     } 

@Override 
    public void onBackPressed() //when back pressed then 
    { 
     // TODO Auto-generated method stub 


     super.onBackPressed(); 
    } 

Я стараюсь много вещей, но это не работает. Plz Help Me.

+0

Это видео с youtube? –

+0

http://stackoverflow.com/questions/5946698/how-to-stop-youtube-video-playing-in-android-webview – Sunny

+0

Можете ли вы показать код, пожалуйста? –

ответ

0

вы можете использовать этот

@Override 
protected void onPause() { 
    m_WebView.reload(); 

    super.onPause(); 
} 
+0

Не работает для меня @wovski –

0

Я думаю, вам нужно переопределить onBackPressed buttton

public void onBackPressed() { 
    mWebView.onPause(); 
    super.onPause(); 
} 
+0

Не работает для меня –

+0

может вы мимо ошибки LogCat – baderkhane

+0

Нет ошибок в LogCat –

1
@Override 
    public void onPause() { 
     super.onPause(); 
     mWebView.onPause(); 
    } 
+0

я уже пробовал. Это не работает для меня .. –

0

Вы можете попробовать это, это код, который я использовал для аналогичной задачи на 4.4. 2:

@Override 
    public void onBackPressed() 
    { 
     webView.clearView(); 
     webView.freeMemory(); 
     webView.removeAllViews(); 
     webView.destroy(); 

    try { 
      Class.forName("android.webkit.WebView") 
         .getMethod("onPause", (Class[]) null) 
         .invoke(webView, (Object[]) null); 
     } catch (IllegalArgumentException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (IllegalAccessException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (InvocationTargetException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (NoSuchMethodException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (ClassNotFoundException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (Exception e) { 
      // TODO: handle exception 
     } 
     super.onBackPressed(); 
    } 
+0

Что такое internalBrowser здесь –

+0

Извините, я отредактировал ответ –

+0

, можете ли вы привести примерный код? –

Смежные вопросы