我可以在WebView
上播放YouTube视频。我想在youtube视频完成后自动完成/关闭/销毁WebView
。
这是我的代码:
WebView engine = new WebView(this);
engine.getSettings().setJavaScriptEnabled(true);
engine.getSettings().setPluginsEnabled(true);
engine.loadUrl("http://www.youtube.com/embed/bIPcobKMB94?autoplay=1&rel=0&loop=0");//&enablejsapi=1");
setContentView(engine);
实际上,当我在我的自定义播放器中播放的播放列表中有音频时,我试图播放播放列表中的歌曲(音频/视频),而当你的视频播放时,WebView
播放了歌曲另一个自动onCompletion。 Youtube视频在WebView
中播放,但视频完成后,webview仍然打开(不会被破坏/完成)。我怎么能完成WebView
并回到之前的活动?
答案 0 :(得分:1)
Android的webview实现隐藏了与底层MediaPlayer相关的API和回调。应用程序进入画面时的唯一情况是用户尝试全屏显示(单击WebView中嵌入的视频中的全屏图标)。在这种情况下,如果应用程序已实现并注册了WebChromeClient回调,则会调用onShowCustomView()。您无法知道视频何时在网络视图中播放完毕。
我知道这不是你问的问题:但是为什么不通过调用意图来播放网址来使用youtube应用?您可以使用startActivityForResult()方法,该方法将使用结果代码回调您的onActivityFinished()API(您必须实现此回调)。这不适合你吗?