Android - 来自网站的视频播放器无法在WebView中播放

时间:2012-08-21 13:28:31

标签: android webview android-webview android-websettings

嗨我有一个网站,里面有一个视频播放器,我想玩我的Android应用程序的视频播放器。视频播放器在机器人本机浏览器中播放得非常好,但是当我指示WebView与视频播放器未显示的播放器一起访问同一站点时,播放器周围的所有内容都会显示出来。如何在我的应用程序webview中播放视频播放器?

3 个答案:

答案 0 :(得分:1)

Webview不会默认允许Javascript,这很可能是您的视频播放器在网站上使用的内容。您很可能需要告诉您的Webview使用Javascript,以便它至少尝试播放视频(我说尝试因为我自己从未这样做过,我通常会使用播放器活动来播放视频)。

因此,通过引用您的activies webview对象,您可以执行此操作:

browser = (WebView) findViewById(R.id.webbrowser_wvViewer);    
browser.getSettings().setJavaScriptEnabled(true);

答案 1 :(得分:0)

您确定您的视频编解码器与Android webview兼容吗?

根据浏览器的不同,所需的视频编解码器不同。 您还可以检查此链接以进行调试并查看确切的错误:

http://www.smartjava.org/content/remote-chrome-debugging-android

答案 2 :(得分:0)

基督教, 您正在测试哪个版本的Android操作系统?

在Android版姜饼及更早版本中,基于WebView的应用必须实现WebChromeClient回调才能播放视频。以下是WebChromeClient的文档: http://developer.android.com/reference/android/webkit/WebChromeClient.html

具体来说,查看onShowCustomView()和onHideCustomView回调。播放视频时,WebView将回调您提供的WebChromeClient实现的onShowCustomView()。此回调中的第一个参数是一个视图 - 实际上是您要显示的视频。应用程序应覆盖此回调并将此视图添加到应用程序的窗口。总而言之,您的步骤如下: 1.在您的应用程序中创建WebView,在您的应用程序中实现WebChromeClient并使用WebView.setWebChromeClient(this)进行注册。 2.现在,当用户选择播放视频时,将调用您应用的onShowCustomView。 3.在应用程序的onShowCustomView()实现中,您可以替换新视图当前显示的WebView。在onHideCustomView回调上执行相反的操作。 此方法的默认实现是忽略您未在应用中看到视频播放的原因。

相关问题