我正在从我的应用程序打开YouTube视频,类似于这个答案:https://stackoverflow.com/a/12439378/379865
我想知道是否可以在指定的时间打开视频,所以例如视频在开始时从30秒开始运行,而不是从头开始.
YouTube可以很好地在其网址中显示视频的时间.
所以我们假设url
一个视频是
https://www.youtube.com/watch?v=Z149x12sXsw
您可以引用相同的URL,并&t=0m30s
在结束时自动播放30秒.
当您打开视频时,url
使用新扩展名传递新视频.它看起来应该像
https://www.youtube.com/watch?v=Z149x12sXsw&t=0m30s
该Intent
会是这个样子startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=Z149x12sXs" + time)));
哪里String time = "&t=0m30s";
编辑:YouTube应用扩展程序.
public static void watchYoutubeVideo(String id, String time){ Intent appIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube:" + id + time)); Intent webIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=" + id + time)); try { startActivity(appIntent); } catch (ActivityNotFoundException ex) { startActivity(webIntent); } }
使用该问题的另一个答案.无论意图如何,都可以将相同的逻辑应用于任何意图,只需将Time
字符串添加到URI
上面所示的类似内容中.