在安卓系统上从另一个应用程序启动一个应用程序

我想从我的Android应用程序中启动一个已安装的软件包。我认为使用意图是可以做到的,但我没有找到这样的方法。有没有一个链接,在哪里可以找到这些信息?

如果你不知道主要活动,那么可以使用包的名称来启动应用程序。

Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.package.address");
if (launchIntent != null) { 
    startActivity(launchIntent);//null pointer check in case package name was not found
}
评论(13)

我找到了解决办法。在应用程序的清单文件中,我找到了包的名称:com.package.address和我想启动的主活动的名称。MainActivity 下面的代码启动了这个应用程序。

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.package.address","com.package.address.MainActivity"));
startActivity(intent);
评论(5)

如果你知道所安装的软件包所反应的数据和动作,你只需在启动之前将这些信息添加到你的意图实例中。

如果你能访问其他应用程序的AndroidManifest,你可以在那里看到所有需要的信息。

评论(6)