how to check which Intent started the activity?

后端 未结 3 1444
深忆病人
深忆病人 2021-02-13 02:11

I have many activities. Each one of them has an intent which refers to the same activity. Is there a way to find out which intent started the activity?

3条回答
  •  一整个雨季
    2021-02-13 02:46

    try as:

    Intent intent = new Intent();  
    intent.setClass(A.this,Receiveractivity.class);
    intent.putExtra("Uniqid","From_Activity_A");  
    A.this.startActivity(intent);
    
    Intent intent = new Intent();  
    intent.setClass(B.this,Receiveractivity.class);
    intent.putExtra("Uniqid","From_Activity_B");  
    B.this.startActivity(intent);
    
    Intent intent = new Intent();  
    intent.setClass(C.this,Receiveractivity.class);
    intent.putExtra("Uniqid","From_Activity_C");  
    C.this.startActivity(intent);
    

    and in onCreate of main Activity:

    //obtain  Intent Object send  from SenderActivity
     Intent intent = this.getIntent();
    
      /* Obtain String from Intent  */
            if(intent !=null)
            {
            String strdata = intent.getExtras().getString("Uniqid");
             if(strdata.equals("From_Activity_A"))
             {
             //Do Something here...
             }
             if(strdata.equals("From_Activity_B"))
             {
             //Do Something here...
             }
             if(strdata.equals("From_Activity_C"))
             {
             //Do Something here...
             }
             ........
            }
            else
            {
                //do something here
            }
    

    use putExtra for sending Unique key from Each Activity to identify from which Activity intent is Received

提交回复
热议问题