Chrome上的视频播放与Android 7 +上的Android WebView有何不同?

时间:2017-10-13 18:58:18

标签: android webview android-webview chromium

Android 7+使用Chrome浏览器WebView,但有一些差异,因为某些视频适用于Android版Chrome,但它们无法在WebView上运行。

以下是两个例子:

http://www.americatv.com.ar/vivo

http://www.tvpublica.com.ar/vivo/

我也看到了来自巴西和其他一些网站的globosat。似乎越来越多地发生。通常更改用户代理没有帮助。

那么这些网页检查的内容是什么,或者WebView中缺少什么,允许这些视频在Chrome上播放而不是WebView

感谢。

1 个答案:

答案 0 :(得分:1)

如果你将chrome附加到你的android WebView的remote instance(在我的情况下是模拟器中),你会看到一些javascript失败(它们也出现在Android Monitor中但是他们更难以看那里。

enter image description here

特别痛苦的是

  ... I/chromium: [INFO:CONSOLE(7)] "Uncaught ReferenceError: chrome is not defined", source: http://iframe.statics.space/magma/main/js/cast.js (7)

显然在WebView" chrome.X"没有定义(不清楚是否预期),但网站期待它们。所以你可以尝试实现一个假的" chrome对象并注入它(也许),或者尝试使用Firefox useragent,所以它不会尝试使用chrome-y的东西:

myWebView.getSettings().setUserAgentString("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:40.0) Gecko/20100101 Firefox/40.1");