【问题标题】:how to get event of on completion of youtube video in android webview如何在android webview中获取完成youtube视频的事件
【发布时间】:2011-11-22 00:00:28
【问题描述】:

我可以在 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);

实际上,当播放列表中存在音频时,它在我的自定义播放器中播放并且当 YouTube 视频在 WebView 中播放时,我试图从播放列表中播放歌曲(音频/视频),并且歌曲正在自动播放一个接一个在完成的时候。 Youtube 视频在WebView 播放,但视频完成后,webview 仍然打开(不会被销毁/完成)。我怎样才能完成WebView 并返回之前的活动?

【问题讨论】:

  • 你找到解决办法了吗

标签: android webview youtube


【解决方案1】:

Android 的 webview 实现隐藏了底层 MediaPlayer 相关的 API 和回调。应用程序出现的唯一情况是用户尝试全屏显示(单击 WebView 中嵌入的视频中的全屏图标)。在这种情况下,如果应用程序已经实现并注册了 WebChromeClient 回调,就会回调 onShowCustomView()。您无法知道视频何时在 web 视图中播放完毕。

我知道这不是您问的问题:但为什么不通过发送一个播放 url 的意图来使用 youtube 应用呢?您可以使用 startActivityForResult() 方法,该方法将使用结果代码回调您的 onActivityFinished() API(您必须实现此回调)。这不适合你吗?

【讨论】:

  • 感谢您的回答。但我不希望该用户走出我的应用程序。否则使用 startActivityForResult 是可能的
猜你喜欢
  • 2011-09-20
  • 2013-07-20
  • 1970-01-01
  • 2015-05-30
  • 2013-12-18
  • 1970-01-01
  • 2011-10-22
  • 2017-11-17
  • 1970-01-01
相关资源
最近更新 更多