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

时间:2014-09-08 02:07:23

标签: android

在Android中我是新手,我需要在我的应用程序中单击按钮时打开现有应用程序,我该怎么做?是否需要应用程序的包名?如果需要,如何获得名称。感谢。

1 个答案:

答案 0 :(得分:3)

您可以尝试:

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

PackageManager pm = getPackageManager();
Intent intent = pm.getLaunchIntentForPackage("com.example.package");
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)); 
}