我有一个应该由其他应用程序启动的应用程序。
它可以由它自己启动,但也可以从其他应用程序启动。
我们有AppA
和AppB
。
AppB
可以从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
才能完成工作?
答案 0 :(得分:1)
任何其他知道其名称的活动都可以启动任何导出的活动。没什么特别的需要。可以通过将manifest = true放入清单中的活动标记中,或者通过对其进行任何意图过滤(例如将其设置为此应用程序的启动器应用程序)来导出活动。
答案 1 :(得分:1)
您可以在要启动的应用的清单中定义一个意图过滤器。在您的案例中为App B.然后,必须启动此AppB的AppA可以使用相同的Intent过滤器。这称为显式意图。将来,如果任何其他应用程序也想要启动您的AppB,它可以使用相同的意图过滤器。 More on this