我有一个Android应用程序。我只需要从我的Android应用程序打开youtube应用程序主页活动。请注意我不想打开任何特定的视频或频道。只想打开应用程序。我已浏览this和this,但所有内容都用于打开任何视频或频道。 如果有人知道,请建议我。
注意:应用程序在电视上运行,Android版本为4.4
答案 0 :(得分:2)
要在您的设备上打开任何应用,您必须知道该应用的包名......
通过触发该软件包名称的意图,您可以在应用程序中打开一个应用程序,但如果intent没有得到软件包名称,那么他们的意图就是处理那个意图所以要处理它......
Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("any package name you want to open");
startActivity( LaunchIntent );
在你的情况下它是youtube所以包名是:
com.google.android.youtube
答案 1 :(得分:1)
使用包名称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的代码
答案 2 :(得分:1)
实际上,电视中youtube app的软件包名称与手机中的名称不同。
电视上youtube应用程序的软件包名称为Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.google.android.youtube.googletv");
startActivity( LaunchIntent );
,因此以下代码适用于我。
public function __construct(Request $request)
{
parent::__construct($request); // Pass $request object to Parent's method
$this->request = $request;
}
答案 3 :(得分:0)
这适用于设备但不适用于模拟器
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=cxLG2wtE7TM")));
答案 4 :(得分:0)
试试这个:
urlretrieve
并使用它:
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);
}
}
在第二个参数中,您可以传递设备中安装的任何bundleID,并且您想要打开它。