我点击推送通知时导航到活动C.活动A是我的主屏幕,我在接收推送通知时当前在活动A的活动B中。现在考虑我收到推送通知并点击收到的通知。单击推送通知后,活动C将被加载。然后我回到我的应用程序中按这将关闭中间活动B.但我不想关闭我的中间活动。
我对活动A的待定意图如下所示,
Intent intent = new Intent(context, A.class);
intent.putExtra(PUSH_MESSAGE, notification);
PendingIntent.getActivity(context, previousId + 1, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_ONE_SHOT);
,清单文件如下所示,
<activity
android:name=".A"
android:configChanges="orientation|keyboard|screenSize"
android:screenOrientation="portrait"
android:launchMode="singleTask"
android:theme="@style/AppTheme.Light.NoActionBar"/>
<activity
android:name=".B"
android:configChanges="orientation"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/AppTheme.Light.NoActionBar" />
<activity
android:name=".C"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/Theme.Overlay"/>
我也从下面的活动A中启动活动B,
Intent intent = new Intent(getContext(), B.class);
getContext().startActivity(intent);
并在点击收到的推送通知时启动活动C,如下所示
Intent intent = new Intent(context, C.class);
intent.putExtra(C.IS_FROM_PUSH_NOTIFICATION, true);
((Activity) context).startActivityForResult(intent, REQUEST_CODE_REFRESH);
你可以建议我这么做吗?
答案 0 :(得分:0)
在manifest.xml中进行以下更改
<activity
android:parentActivityName=".B"
android:name=".C"
android:configChanges="orientation|keyboardHidden|screenSize"
android:theme="@style/Theme.Overlay"/>