WebView无法在GoogleDrive中播放视频

时间:2019-11-15 10:44:05

标签: android android-webview

因此,我正在尝试通过URL为https://drive.google.com/a/{sthing...}/file/d/{FILE_ID}/view?usp=drivesdk的android Webview播放Google驱动器中的视频文件

但是,当我按下“播放”按钮时,我一直从chromnium获取错误日志

  

I /铬:[INFO:CONSOLE(1341)]“未捕获(承诺)错误:不受信任的URL:https://youtube.googleapis.com/videoplayback?...”,来源:...(1341)

无法播放视频。 我已经尝试过

  

webview.setWebChromeClient(new WebChromeClient())

public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {

    handler.proceed(); // Ignore SSL certificate errors
}

但是似乎无法播放视频。

反正可以通过Android WebView播放GoogleDrive的视频吗? 预先感谢。

我的代码:

webPreviewDocument.setWebViewClient(new WebViewClient() {
    @Override
    public void onPageFinished(WebView view, String url) {
        progressBar.setVisibility(View.GONE);
    }
});
WebSettings webSettings = webPreviewDocument.getSettings();
webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NORMAL);
webSettings.setLoadWithOverviewMode(true);
webSettings.setJavaScriptEnabled(true);
webSettings.setUseWideViewPort(true);
webSettings.setSaveFormData(false);
webSettings.setDomStorageEnabled(true);
webSettings.setAllowFileAccess(true);
webSettings.setPluginState(WebSettings.PluginState.ON);
webPreviewDocument.loadUrl(url);

2 个答案:

答案 0 :(得分:6)

我遇到了同样的问题,这对我有用:

CookieManager.getInstance().setAcceptCookie(true);
if (android.os.Build.VERSION.SDK_INT >= 21) {
    CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
}

WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);

webView.setWebViewClient(new WebViewClient());
webView.setWebChromeClient(new MyWebChromeClient());

答案 1 :(得分:0)

在将HTML内容加载到WebView之前添加这些行。

webView.Settings.PluginsEnabled = true;
webView.Settings.JavaScriptEnabled = true;
webView.Settings.SetPluginState (WebSettings.PluginState.On);
webView.SetWebViewClient (new WebViewClient ());