我正在尝试启动我的软件包中的两个应用程序并在它们之间进行通信。
App1-> sendOrderedBroadcast和一些数据发送到App2
App2-> startActivity名为Activity2,并在BroadcastReceiver中接收到数据
Activity2将结果发送回App1
这就是我想要做的。 在Activity2中无法注册Receiver。它必须在BroadcastReceiver中启动。
@Override
public void onReceive(Context context, Intent intent) {
//some data including isTriggered
Intent intent2 = new Intent(context, Activity2.class);
intent2.putExtra("isTriggered",isTriggered);
startActivity(intent2);
}
,在Activity2中,我想将PendingResult返回到App1
results.putBoolean("isSameCard", isSameCard);
result.setResultCode(0);
result.finish();
如何实现此行为。 startActivityForResult也是不可能的,因为需要激活Activity2(当我手动更改应用程序时,应该触发Activity2 onResume。