我尝试在android webview中播放视频,但是无法播放视频。在网络视图中,仅显示视频图标。 我正在尝试不同的选项,我曾尝试在播放的webview视频中使用apprtc。但是当我在webview视频中使用licode演示时,并没有在webview中呈现。
在不绕过ssl认证的情况下,它会显示白屏。 我已绕过ssl认证。它会在屏幕上显示视频图标。但是问题仍然在于,无法在网络视图中播放该视频。 我已经在oreo版和棒棒糖版上对此进行了测试。
WebView webView;
@SuppressLint("SetJavaScriptEnabled")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.webview);
webView = findViewById(R.id.webview);
String url = "https://vid-stream.zemcar.com/room?id=5bcee60ac0072478e0bfa4c6";
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setAppCacheEnabled(true);
webView.getSettings().setDatabaseEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onReceivedSslError(WebView view, final SslErrorHandler handler, SslError error) {
String message = "SSL Certificate error.";
switch (error.getPrimaryError()) {
case SslError.SSL_UNTRUSTED:
message = "The certificate authority is not trusted.";
break;
case SslError.SSL_EXPIRED:
message = "The certificate has expired.";
break;
case SslError.SSL_IDMISMATCH:
message = "The certificate Hostname mismatch.";
break;
case SslError.SSL_NOTYETVALID:
message = "The certificate is not yet valid.";
break;
}
message += "\"SSL Certificate Error\" Do you want to continue anyway?.. YES";
handler.proceed();
}
});
webView.loadUrl(url);
webView.setWebChromeClient(new WebChromeClient() {
@RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
@Override
public void onPermissionRequest(final PermissionRequest request) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
request.grant(request.getResources());
} else {
request.grant(request.getResources());
Log.e("Error", request.toString());
}
}
}
);
}
}