在另一个 activity 中获取 startActivityForResult 方法的结果?

Get the result of startActivityForResult method in another activity?

我正在使用 Google place picker API 如下:

PlacePicker.IntentBuilder builder = new PlacePicker.IntentBuilder();
startActivityForResult( builder.build((Activity) context), PLACE_PICKER_REQUEST );

现在,我在 onActivityResult() 方法中得到了预期的结果:

protected void onActivityResult( int requestCode, int resultCode, Intent data ) {
  if( requestCode == PLACE_PICKER_REQUEST && resultCode == RESULT_OK ) {
        displayPlace( PlacePicker.getPlace( data, this ) );
    }
}

activity 的进程和意图是

MapActvity -> Place picker intent -> MapActivity 

我可以在调用 startActivityForResult 后直接移动到另一个 activity 并在另一个 activity 的 onActivityResult() 中收集结果,而不是返回 MapActivity

不,抱歉,这是不可能的。 startActivityForResult()onActivityResult() 方法是配对的;对 startActivityForResult() 的调用始终将其结果传递给进行调用的同一 activity(或片段)。