Search code examples
androidshareshare-intent

Navigate back to app after closing share dialog


I have a share button in my application, whose purpose is to share a string of information with user selected app (for example twitter or gmail). The problem is when you click the share button, the share window appears and the app becomes black in the background. After done sharing, the user is returned to menu / home screen and has to open the app again in order to continue using it from where they left.

What I need is to go back to my app after done sharing.

This is the OnClickListener I used:

shareButton.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    String text = mContext.getString(R.string.shareText) + " " + profileInfo.getName() + " " + mContext.getString(R.string.shareText2);
                    Intent shareIntent = new Intent(Intent.ACTION_SEND);
                    shareIntent.putExtra(Intent.EXTRA_TEXT, text);
                    shareIntent.setType("text/plain");
                    startActivity(shareIntent);
                }
            }
    );

What am I doing wrong here? Any help is appreciated.


Solution

  • Use startActivityForResult() instead of startActivity(). This will return to the starting Activity after the Intent action is completed. See the Getting a Result from an Activity post for an example.

    And wait for response by overriding onActivityResult() method :

        @Override   public void onActivityResult(int requestCode, int resultCode, Intent data) {        
            // TODO Auto-generated method stub if(requestCode == 0) {
           // You will get callback here when email activity is exited
          // perform you task here 
          }