2

我一直在到处寻找,但我无法找到解决方案。我目前正在开发一个处理一些 rss 内容的应用程序。在内容中,作者可以在标签内添加 youtube 链接。

在 webView 中播放 youtube 视频不是最佳选择。我想要实现的是使用播放按钮显示视频的预览,当用户单击它时,不要在 webView 中启动视频,而是使用视频 URL 启动意图以启动 youtube 应用程序(如果可用)或处理意图的任何其他应用程序。

如何启动意图不是问题。问题是:

  1. 使用播放按钮显示预览和视频。
  2. 单击视频时启动意图。

作为示例,可以使用 Google Reader 应用程序。

我已经尝试了很多设置,但我无法找到正确的方法。

提前致谢。

PS:这可能是内容的一个例子:

<p><a href="http://blogg.fotbollskanalen.se/gara/files/2013/02/Skärmavbild-2013-02-07-kl.-10.40.03.png"><img class="aligncenter size-large wp-image-1759" src="http://blogg.fotbollskanalen.se/gara/files/2013/02/Skärmavbild-2013-02-07-kl.-10.40.03-424x527.png" alt="" width="424" height="527" /></a></p> <p>Avslutningsvis en rätt kass reklamfilm med <strong>Puyols</strong> polare <strong>Cesc Fàbregas</strong>, som för övrigt gjorde Spaniens första mål i går.</p> <iframe width="424" height="250" src="http://www.youtube.com/embed/x353GSw70_c" frameborder="0" allowfullscreen></iframe> <p>* = Övriga sex 100-matchkillar är <strong>Casillas</strong>, <strong>Xavi</strong>, <strong>Zubizarreta</strong>, <strong>Xabi Alonso</strong>, <strong>Raúl</strong> och <strong>Fernando Torres.</strong></p> <p>UPPDATERING: Efter lite research kan jag nu meddela att bergsgeten är <a href="http://sv.wikipedia.org/wiki/Arabisk_oryx" target="_blank">en orix</a>. Tänk att man kan lära sig nya saker varje dag&#8230;</p>
4

1 回答 1

1

我必须为应用程序执行此操作,虽然 VideoView 在以后的设备上工作,但旧设备没有正确显示预览。我最终创建了一个视图,该视图覆盖了背景图像上的播放按钮,并在点击时链接到 youtube。为了获取图像,我使用了一个 youtube 服务,该服务允许您请求托管视频的屏幕截图。

把这一切放在一起: -

1) 创建您的预览布局。例如

<RelativeLayout
    android:layout_width="90dp"
    android:layout_height="90dp">

    <ImageView
        android:id="@+id/thumbnail"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:scaleType="fitStart" />

    <ImageButton
        android:id="@+id/ButtonPlay"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@null"
        android:src="@drawable/play" />
</RelativeLayout>

然后我使用以下设置缩略图: -

public static final String VIDEO_IMAGE_URL = "http://img.youtube.com/vi/%1$s/0.jpg";
public static final String VIDEO_URL = "vnd.youtube://%1$s";
...
String imageUrl = String.format(VIDEO_IMAGE_URL, "youTubeVideoId"); 
.. 
ImageButton button = (ImageButton) row.findViewById(R.id.ButtonPlay);
String videoUrl = String.format(VIDEO_URL, mContext.getText(mRows[i].mVideoId));
button.setTag(Uri.parse(videoUrl));
button.setOnClickListener(mVideoClickListener);

点击监听器所做的只是:-

startActivity(new Intent(Intent.ACTION_VIEW, (Uri) v.getTag()));

希望有帮助

于 2013-02-08T11:40:23.933 回答