私の質問では、アクティビティAとアクティビティBの2つのアクティビティがあります。Aがメインアクティビティ、AがアクティビティBの親アクティビティです。アクティビティBには通知このような、またはによって活性A.Android通知アクティビティから親アクティビティに移動
アクティビティ開始アクティビティB:
Intent openIntent = new Intent(context, B.class);
openIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntentOpen = PendingIntent.getActivity(context, 0 , openIntent, PendingIntent.FLAG_ONE_SHOT);
contentView.setOnClickPendingIntent(R.id.textView5NotifyOpen,pendingIntentOpen);
マニフェスト:
Intent intent = new Intent(getActivity(), B.class);
startActivityForResult(intent, RESULT_ACTIVITY_1);
通知は、このような活性Bを開始します
<activity
android:name=".B"
android:parentActivityName=".MainActivity"
android:theme="@style/Theme.AppCompat.Light.NoActionBar">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.eee.ccc.MainActivity" />
</activity>
活動Bが近く、いくつかのデータを送り返すとき:活動Bのためのこれまでのところ、すべてがうまく動作し
Intent returnIntent = new Intent();
returnIntent.putExtra("Data",some data);
setResult(Activity.RESULT_OK,returnIntent);
finish();
、私はAから通知から活動Bを起動することができるよけどBの終了アクティビティAが呼び出されていないときに通知から起動します。 通知をクリックすると、アクティビティBが開始され、Bが親アクティビティAを終了/終了すると、で開始されます。setResult(Activity.RESULT_OK、returnIntent);およびonActivityResult(int requestCode、int resultCode、Intent data)アクティビティAのが呼び出されます。 感謝!