Android - 允许应用程序由其他应用程序启动

时间:2013-08-20 05:33:43

标签: android android-intent

我有一个应该由其他应用程序启动的应用程序。 它可以由它自己启动,但也可以从其他应用程序启动。 我们有AppAAppBAppB可以从AppA启动。

据我所知,AppA可以做到这一点:

        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.setComponent(new ComponentName("com.mypackage.myapp","com.mypackage.myapp.MyActivity"));
        startActivity(intent);

MyActivity是AppB的活动。

虽然我可以从AppB启动AppA,但我的问题是,AppB中是否还需要其其他配置? 或者在从另一个应用程序调用应用程序时是否需要记住这些要求?

如果没有,在这种情况下,只有AppA才能完成工作?

2 个答案:

答案 0 :(得分:1)

任何其他知道其名称的活动都可以启动任何导出的活动。没什么特别的需要。可以通过将manifest = true放入清单中的活动标记中,或者通过对其进行任何意图过滤(例如将其设置为此应用程序的启动器应用程序)来导出活动。

答案 1 :(得分:1)

您可以在要启动的应用的清单中定义一个意图过滤器。在您的案例中为App B.然后,必须启动此AppB的AppA可以使用相同的Intent过滤器。这称为显式意图。将来,如果任何其他应用程序也想要启动您的AppB,它可以使用相同的意图过滤器。 More on this