0
我有两个应用程序。从第一个应用程序的主要活动中,它会调用startActivityForResult()以启动第二个应用程序的主要活动。我知道我可以通过第二个应用的主要活动Intent发送结果。从接收活动中返回不同活动的结果
但对于某些情况下,如果第二个应用程序的主活动启动另外一个活动,它完成的主要活动再怎么我可以给结果从第二个应用程序的另一个活动的第一个应用的主要活动?
我有两个应用程序。从第一个应用程序的主要活动中,它会调用startActivityForResult()以启动第二个应用程序的主要活动。我知道我可以通过第二个应用的主要活动Intent发送结果。从接收活动中返回不同活动的结果
但对于某些情况下,如果第二个应用程序的主活动启动另外一个活动,它完成的主要活动再怎么我可以给结果从第二个应用程序的另一个活动的第一个应用的主要活动?
假设您有三项活动 - 第一款应用中的A
和第二款应用中的B
和C
。
我看到两种可能的情况:
A
开始对结果B
开始对结果C
。从C
结果被传递到B
,B
提供它作为一个结果A
。Intent
s - 未开始B
结果,但使用明确的Intent
s将结果返回至A
。这意味着您应该将A
的启动模式设置为singleTop
并使用适当的标志来确保您不会以活动的多个实例结束。您也可以将Intent
不直接发送到A
,而是发送到BroadcastReceiver
,以便相应地处理它们。
我的问题是从B I不能对结果开始℃。我需要完成B并开始C.并且从C我需要将结果发送给A.另外,我不能将A作为单个实例。我正在寻找的是,如果有任何方法我可以直接从C发送结果到没有BroadcastReceiver的A。 – Gulshan
我会说不。组件之间沟通的唯一方式是“Intent”。它们由一个活动或一个'BroadcastReceiver'处理。 –
请给我们一个更好的想法,你需要什么,因为有意向,你可以解决你的问题。 – Robert