Android 将OnActivityResult发送到其他活动

Android 将OnActivityResult发送到其他活动,android,Android,我有3个活动:A、B和C。我想从A启动C,并使用ActivityResult()将结果发送回B。: 使用startActivityForResult()启动C C启动并执行其任务 B在activityResult()上收到C的结果 有可能吗?这不是直接可能的,因为活动C的结果将在C完成时返回到活动A。 如果要在活动C将结果发送到A之后打开活动B,请从onActivityResult(当结果从C发送到A时)启动活动B,并使用A将从C接收到的数据传递给B 但是,如果您的活动B与上述内容无关,则可

我有3个活动:A、B和C。我想从A启动C,并使用ActivityResult()将结果发送回B。:

  • 使用
    startActivityForResult()启动C
  • C启动并执行其任务
  • B在activityResult()上收到C的结果

有可能吗?

这不是直接可能的,因为活动C的结果将在C完成时返回到活动A。 如果要在活动C将结果发送到A之后打开活动B,请从onActivityResult(当结果从C发送到A时)启动活动B,并使用A将从C接收到的数据传递给B

但是,如果您的活动B与上述内容无关,则可以将活动C的结果存储在SQLite DB中,然后当活动打开时,从SQLite读取结果并显示在活动B中

 yes it is possible please do like this.

  Intent intent=new Intent(MainActivity.this,ActivityC.class);  
            startActivityForResult(intent, 2);// Activity is started with 
       requestCode 2  


    @Override  
      protected void onActivityResult(int requestCode, int resultCode, 
     Intent data)  
         {  
             super.onActivityResult(requestCode, resultCode, data);  
              // check if the request code is same as what is passed  here 
            it is 2  
               if(requestCode==2)  
                     {  
                        String message=data.getStringExtra("MESSAGE");   
                        textView1.setText(message);  
                       //for here you can start your Activity B with data 
                      whatever you want to send to Activity B.
                     }  
               }  
表单活动c将结果设置为

   Intent intent=new Intent();  
                intent.putExtra("MESSAGE",message);  
                setResult(2,intent);     

是的,可能。请检查此url,您不能直接执行此操作。你需要链接A->B->C。结果将返回为C->B->A。当然可能是重复的。但不像你想象的那样。只需使用活动B的onActivityResult中获得的相关数据启动活动C,输入您用于启动C@greenapps的意图,但从A关闭C并启动B是否会影响手机性能?在onActivityResult中从A关闭C并重新打开B是否会影响手机性能?但B尚未启动或创建,如何确保putExtra返回活动B当结果从C返回到A时,我们可以启动活动然后将来自活动A中C的数据发送给B,在setResult之后还需要完成C