在我的应用程序中,我有一个从通知中打开的活动,但未声明具有主要活动或启动器活动· 此外,此活动声明具有“singleTop”。 适用于大多数用户,但有些是一个小问题。 在某些情况下,单击“通知”时,将打开“活动”,单击“返回”时,将显示应用程序“主要活动”。 点击后如何显示主要活动? 此外,如果用户在此活动中并单击“主页”,稍后它会单击应用程序图标以打开“主要”活动,则会打开以前打开的活动(非主要活动)。这可以改变吗? 感谢。
- 清单的结构是:
<activity android:name=".MainActivity" android:label="@string/app_name" android:exported="true" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".ShowAlarmsActivity" android:launchMode="singleTop" android:exported="true" android:theme="@style/AppThemeWithoutActionBar" />
答案 0 :(得分:0)
你可以这样做,我可以在背面按下并使用此代码启动父活动
或者如果您使用操作栏,则可以使用父活动标记
Intent intent = new Intent(getApplicationContext(), ParentActivity.class);
startActivity(intent);
如果您想区分用户是来自通知还是应用程序启动,您可以使用意图传递一些关键值并提供它
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="parentActivity" />