Android 如何打开Youtube应用程序主活动

Android 如何打开Youtube应用程序主活动,android,Android,我正在尝试使用下面的代码打开YouTube应用程序的主要活动 Intent intent = new Intent(Intent.ACTION_MAIN); intent.setPackage("com.google.android.youtube"); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent);

我正在尝试使用下面的代码打开YouTube应用程序的主要活动

             Intent intent = new Intent(Intent.ACTION_MAIN);
             intent.setPackage("com.google.android.youtube");
             intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
             startActivity(intent);
问题是,当Youtube应用程序更新到最新版本时,上面的代码可以正常工作,但当用户拥有旧版本的Youtube时,代码会失败


我如何打开YouTube主活动而不关心用户的版本?

您可以做一个简单的意图操作视图:

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("your_youtube_link"));
startActivity(intent)

如果您的链接是youtube链接,则本机选择器应询问您要使用的应用程序:您的浏览器之一,或youtube应用程序(如果可用)。

您可以执行简单的意图操作视图:

Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("your_youtube_link"));
startActivity(intent)
如果您的链接是youtube链接,则本机选择器应询问您要使用的应用程序:浏览器之一,或youtube应用程序(如果可用)。

我找到了解决方案:

Intent i = app.getPackageManager().getLaunchIntentForPackage("com.google.android.youtube");
if (i != null) 
    app.startActivity(i);
我找到了解决办法:

Intent i = app.getPackageManager().getLaunchIntentForPackage("com.google.android.youtube");
if (i != null) 
    app.startActivity(i);

我不需要打开玩家活动,我只需要打开mainActivity进行搜索操作,因此,浏览器对我没有用处,因为我的活动的一部分是为Youtube链接的传入意图共享的。你的答案与提问者需要的答案不完全一致,但我认为这是更好的方法,因为不能保证用户将安装Youtube。我不需要打开播放器活动,我只需要打开mainActivity进行搜索操作,因此浏览器对我没有用处,因为我的活动中有一部分是为Youtube链接的传入意图而共享的。你的答案与询问者需要的答案不完全一致,但我认为这是更好的方法,因为不能保证用户会安装Youtube。很酷,它打开Youtube,但是如何强制它打开给定的电影或给定的频道呢?酷,它打开了youtube,但是如何强制它打开给定的电影或给定的频道呢?