我的应用程序有通知,显然,没有任何标志,每次都会启动一个新活动,因此我会得到多个相同的活动在彼此之上运行,这是错误的。
我想要它做的是将通知挂起意图中指定的活动带到前面(如果它已经在运行),否则启动它。
到目前为止,我对该通知的意图/待处理意图是
private static PendingIntent prepareIntent(Context context) {
Intent intent = new Intent(context, MainActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
}
奇怪的是,它有时有效,有时无效......我觉得我已经尝试了所有标志组合。
你可以使用这个:
<activity
android:name=".YourActivity"
android:launchMode="singleTask"/>
其工作原理类似于"singleInstance"
但它不会有那种奇怪的动画。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)