我创建了一个简单的演示应用程序,我正在尝试嵌入YouTube视频。
这是我正在使用的<object>
标记
String urlTag = "<object><param name=\"movie\" value=\"http://www.youtube.com/v/opZ69P-0Jbc?version=3&feature=player_detailpage\">" +
"<param name=\"allowFullScreen\" value=\"true\"><param name=\"allowScriptAccess\" value=\"always\">" +
"<embed style=\"width:100%; height:100%\" src=\"http://www.youtube.com/v/opZ69P-0Jbc?version=3&feature=player_detailpage\" type=\"application/x-shockwave-flash\" allowfullscreen=\"true\" allowScriptAccess=\"always\" width=\"200\" height=\"300\"></object>";
视频已嵌入,运行正常。但是,当我点击全屏按钮时,演示应用程序崩溃了。我已经提到了SO上的其他链接,但没有任何帮助。
我已在此site上尝试了上述代码(替换了object标签)。它工作正常。我不会出错。感谢。
更新1:根据@ DarkXphenomenon的建议,我发现我收到了此错误:
java.lang.NullPointerException
android.webkit.PluginFullScreenHolder.show(PluginFullScreenHolder.java:85)
通过添加webView.setWebChromeClient(new WebChromeClient());
消除错误。参考link。现在演示版没有崩溃,但仍然没有以全屏模式播放视频。屏幕变成空白。
更新2:此外,整个嵌入式播放器消失了很多次。在检查WebView示例ApiDemo时,我发现发生了这样的事情。是冰淇淋三明治上的WebView车吗?
答案 0 :(得分:0)
您可以手动启动意图,让用户在他偏好的应用中观看视频。
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=xyz")));
另外,您可以将网址设置为vnd.youtube:<video_id>?<parameters>
这会强制视频在youtube应用程序中播放。
编辑:还要确保您的网站启用了插件和脚本。
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setPluginsEnabled(true);