我们开发了一个react native应用,它将接收来自外部Native应用的数据,并将响应数据发送回调用应用。
在本机应用程序中,我们像这样将数据发送到React本机应用程序,
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.ReactNativeApp", "com.ReactNativeApp.ReceiverActivity"));
intent.putExtra("outGoingData", someData);
startActivityForResult(intent, 600);
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 600){
String result = data.getStringExtra("data");
}
}
我们能够成功在React本机应用程序中接收数据,但是当尝试发送回本机应用程序时,我们无法
Activity activity = getReactApplicationContext().getCurrentActivity();
Intent intent = new Intent();
intent.putExtra("data", "newData");
activity.setResult(Activity.RESULT_OK, intent);
activity.finish();
我们总是将resultCode设为0,intent设为null。两种应用的launchMode在manifest.xml中都配置为“ singleTop”