Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android如何打开其他应用程序,我需要在我的应用程序中单击btn时打开一些应用程序。需要植根吗?_Android - Fatal编程技术网

android如何打开其他应用程序,我需要在我的应用程序中单击btn时打开一些应用程序。需要植根吗?

android如何打开其他应用程序,我需要在我的应用程序中单击btn时打开一些应用程序。需要植根吗?,android,Android,我是android新手,当我点击应用程序中的按钮时,我需要打开一个现有的应用程序,我该怎么做?是否需要应用程序的程序包名称?如果需要,如何获取名称。谢谢。您可以试试: Intent intent = new Intent(Intent.ACTION_MAIN); intent.setClassName("com.example.package", "com.example.package.ActivityToStart"); startActivity(intent); 或 如果您不知道设备中

我是android新手,当我点击应用程序中的按钮时,我需要打开一个现有的应用程序,我该怎么做?是否需要应用程序的程序包名称?如果需要,如何获取名称。谢谢。

您可以试试:

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName("com.example.package", "com.example.package.ActivityToStart");
startActivity(intent);

如果您不知道设备中已安装应用的软件包名称,则可以尝试此操作以获取软件包列表:

PackageManager pm = getPackageManager();
//get a list of installed apps.
List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);

for (ApplicationInfo packageInfo : packages) {
    Log.d(TAG, "Installed package :" + packageInfo.packageName);
    Log.d(TAG, "Source dir : " + packageInfo.sourceDir);
    Log.d(TAG, "Launch Activity :" + pm.getLaunchIntentForPackage(packageInfo.packageName)); 
}

应用程序使用意图打开/与其他应用程序/活动交互。您可以在文档中查找意图。
PackageManager pm = getPackageManager();
//get a list of installed apps.
List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA);

for (ApplicationInfo packageInfo : packages) {
    Log.d(TAG, "Installed package :" + packageInfo.packageName);
    Log.d(TAG, "Source dir : " + packageInfo.sourceDir);
    Log.d(TAG, "Launch Activity :" + pm.getLaunchIntentForPackage(packageInfo.packageName)); 
}