如何直接从Android应用程序打开Youtube视频链接?

时间:2016-12-29 11:12:55

标签: android android-intent youtube

我想点击一个Button来播放Youtube视频,但是我想要显示的动作对话框窗口,我希望youtube视频链接应该直接在Youtube应用上打开按钮点击而不是显示此选择操作窗口:

enter image description here

怎么可能?有任何建议,请

代码:

 playVideo.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=bzSTpdcs-EI")));
        }
    });

4 个答案:

答案 0 :(得分:2)

我认为最好的方法是:

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube://" + id));
startActivity(intent);

id是YykjpeuMNEk in https://www.youtube.com/watch?v=YykjpeuMNEk

答案 1 :(得分:2)

您可以设置youtube应用程序的包名称

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.youtube.com/watch?v=bzSTpdcs-EI"));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setPackage("com.google.android.youtube");
startActivity(intent)

答案 2 :(得分:1)

您可以使用以下代码直接向youtube应用启动意图。

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("https://www.youtube.com/watch?v=bzSTpdcs-EI"));
intent.setPackage("com.google.android.youtube");
startActivity(intent);

将此代码包装在try catch中,以避免在设备中没有youtube时出现异常

答案 3 :(得分:0)

在设备错误处理方面没有 YouTube 应用的 Kotlin 建议:

    try {
            val intent = Intent(Intent.ACTION_VIEW)
            intent.data = Uri.parse("https://www.youtube.com/watch?v=dQw4w9WgXcQ")
            intent.setPackage("com.google.android.youtube")
            startActivity(intent)
        } catch (e : Exception) {
            Snackbar.make(requireView(),"You don't have youtube? For real?",Snackbar.LENGTH_LONG).show()
        }