如何从我的 android 应用程序打开 youtube 应用程序主页活动?

Posted

技术标签:

【中文标题】如何从我的 android 应用程序打开 youtube 应用程序主页活动?【英文标题】:How to open youtube applications home activity from my android application? 【发布时间】:2016-03-29 12:30:03 【问题描述】:

我有一个安卓应用程序。我只需要从我的 android 应用程序中打开 youtube 应用程序主页活动。请注意,我不想打开任何特定的视频或频道。只想打开应用程序。我已经通过this 和this 但都是为了打开任何视频或频道。 如果有人知道这一点,请建议我。

注意:应用程序在电视上运行,安卓版本为 4.4

【问题讨论】:

在您的问题中添加外部链接的要点总是好的。将信息保存在一个地方。 已经在这里回答***.com/questions/574195/… 这个答案是为了打开一个特定的视频。我只想打开应用,而不是任何视频 只需删除视频ID/watch/v=asfasdfasdfas 我尝试删除视频 ID,但它正在为浏览器和应用程序打开一个选择器。 【参考方案1】:

这将适用于设备,但不适用于模拟器

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=cxLG2wtE7TM")));

【讨论】:

你不应该从其他帖子中复制答案,事实也是如此。这是从HERE 复制的。您可以只提供参考资料,或者至少将功劳归功于实际回答它的人。 有趣的是,即使视频 id 与复制答案的帖子中的相同【参考方案2】:

使用包名打开应用 youtube 包名是com.google.android.youtube,因此您可以使用以下意图代码

try 
       Intent LaunchIntent = packageManager.getLaunchIntentForPackage("com.google.android.youtube");
       startActivity(LaunchIntent);
     catch (Exception e) 
            e.printStackTrace();
    

如果找不到包,只需用 try catch 括起来以获取任何应用程序的包名称,请在 Google Play 上使用 Application

同样的代码适用于 Android TV

【讨论】:

即使手机中安装了 youtube 应用程序,我也会收到 LaunchIntent null。 @Palod's:发布您有问题的代码或尝试在不同的设备上工作或不工作,因为此代码在 Google Play 上的实时应用程序中运行良好,我已分享答案。【参考方案3】:

要从您的设备打开任何应用程序,您必须知道该应用程序的包名称......

通过触发该包名称的意图,您可以从您的应用中打开一个应用,但如果意图没有获得包名称,那么他们就没有意图处理该意图,所以请注意它......

Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("any package name you want to open");
startActivity( LaunchIntent );

在您的情况下,它是 youtube,所以包名称是:

 com.google.android.youtube

【讨论】:

【参考方案4】:

实际上 youtube 应用程序在电视中的包名称与手机中的不同。 电视上 youtube 应用程序的包名称是 "com.google.android.youtube.googletv",所以下面的代码对我有用。

Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.google.android.youtube.googletv");
startActivity( LaunchIntent ); 

【讨论】:

我不得不在 Android 电视盒上使用“com.google.android.youtube.tv”【参考方案5】:

试试这个:

public static void openInstalledApp(Context context, String bundle_id) 

    PackageManager pm = context.getPackageManager();
    Intent appStartIntent = pm.getLaunchIntentForPackage(bundle_id);
    if (null != appStartIntent) 
        context.startActivity(appStartIntent);
    


并使用它:

openInstalledApp(<your_context>,"com.google.android.youtube");

在第二个参数中,您可以传递任何安装在您的设备中并且您想要打开它的 bundleID。

【讨论】:

以上是关于如何从我的 android 应用程序打开 youtube 应用程序主页活动?的主要内容,如果未能解决你的问题,请参考以下文章

android:我如何从我的应用程序中打开另一个应用程序?

如何从我的网络浏览器 (Chrome) 在 Android 中打开任何应用程序?我与 A Href 链接有啥关系?

如何在 IOS 中从我的 React-Native 应用程序打开外部应用程序?

如何从我的应用程序在MS-Excel或MS-Word - Android中打开excel,doc文件

如何从我的 android 应用程序中尽快获得准确的纬度/经度?

Firemonkey:如何从我的应用程序中打开本机 IOS 地图?