在this question我询问了如何通过推送通知在我的应用程序中打开fragment
。我很容易找到解决方案,但现在我遇到的问题是,当我按照推送通知时,会创建另一个应用程序实例。
我尝试了the suggestions given here,但在noHistory="true"
文件中的activity
添加了AndroidManifest
,导致该应用在我不希望关闭时关闭。< / p>
按照以下步骤操作,我需要在步骤5关闭应用程序的所有实例。实际上,我不需要在步骤4中创建应用程序的第二个实例。我该怎么做?
这表明当您在应用程序中的某个位置跟踪通知时,将创建应用程序的第二个实例。
为什么呢? 我如何终止应用程序的第一个实例,或在提示关闭应用程序并说“是”时终止应用程序的两个实例? 或者更好的是,如何在通知应用程序时创建两个实例?
答案 0 :(得分:2)
我可能有点晚了,为了避免创建一个新的活动实例,你可以添加一个&#34; launchMode&#34;在AndroidManifest中像这样:
<activity
android:name=".MyActivity"
android:label="@string/app_name"
android:launchMode="singleTop">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
如果通知已打开,则singleTop将带来活动的当前实例,而不是创建新活动。
有关launchModes的更多信息,请参阅此链接:http://www.intridea.com/blog/2011/6/16/android-understanding-activity-launchmode