我在網上看到人們都在使用WebView時遇到問題,即在應用程序移動到背景時不會暫停音頻。WebView不會在後臺應用程序中播放
我有確切的OPPOSITE問題。我想要音頻繼續在後臺播放,但它不會。我目前在Youtube上開始播放視頻,如果我關閉了屏幕(當應用程序處於前臺時),它會繼續播放,但當按Home按鈕時,它將停止播放。
任何想法,爲什麼它沒有,顯然,默認行爲?
以下是我建立我的web視圖,如果它的事項
public void setupWebView(Context ctx, ISlideWebView wv, IWebViewToParentComm listener,
File cacheFolder) {
if (wv == null || !(wv instanceof WebView)) {
throw new IllegalArgumentException("Webview expected to be of type SlideWebView. Found class type [" + wv.getClass().getName() + "]");
}
SlideWebView webview = (SlideWebView) wv;
WebSettings webSettings = webview.getSettings();
webSettings.setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
webSettings.setSaveFormData(false);
webSettings.setLoadWithOverviewMode(true);
webSettings.setSupportZoom(false);
webSettings.setUseWideViewPort(true);
webSettings.setBuiltInZoomControls(false);
webSettings.setAppCachePath(cacheFolder.getAbsolutePath());
webSettings.setAppCacheEnabled(true);
webSettings.setDatabaseEnabled(true);
webSettings.setSaveFormData(false);
webSettings.setSavePassword(false);
webSettings.setGeolocationEnabled(true);//TODO: ?! AppConfig.getInstance(context).usesGeolocation
webSettings.setJavaScriptEnabled(true);
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
webSettings.setDisplayZoomControls(false);
webSettings.setLoadWithOverviewMode(true);
webSettings.setUseWideViewPort(true);
webview.setWebViewClient(new SlideWebViewClient(ctx, listener.getUrlNav(), listener.getUrlNavInterface()));
webview.setWebChromeClient(new SlideWebChromeClient(listener));
webview.setVerticalScrollListener(listener);
webview.setOverScrollMode(View.OVER_SCROLL_NEVER);
webview.setScrollbarFadingEnabled(false);
FileDownloader fileDownloader = listener.getFileDownloader();
if (fileDownloader != null) {
webview.setDownloadListener(fileDownloader);
}
}
是的,其實是一個好主意。我只是試了一下。當Activity調用onPause時,我在webview上調用onResume,但它似乎仍然停止播放視頻。 :(任何其他想法? – AndreiBogdan