Видео, не отображаемое в Webview с использованием Licode Demos, отображает только значок видео - PullRequest
0 голосов
/ 26 декабря 2018

Я пытаюсь воспроизвести видео в веб-браузере Android, но видео не воспроизводится.В веб-просмотре появляется только значок видео.Я пытаюсь другой вариант, я попробовал apprtc в видео просмотра видео.Но когда я использую демонстрацию licode в веб-просмотре, видео не отображается в веб-просмотре.

Без обхода сертификации ssl отображается белый экран.Я обошел сертификацию ssl.Он отображает значок видео на экране. Но проблема остается той же видео не может быть воспроизведено в веб-просмотре.Я проверил это на версии Oreo и Lollipop.

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