我不希望我的活动有多个实例
我的服务有一个旨在启动关联活动的通知,但我发现有时当在我的活动中按回时,它会返回到先前加载的活动,因此看起来有时会有多个活动副本记忆中。我怎样才能避免这种情况?我想我必须把存在的情况放在前面,或者推出一个新的,但不知道具体如何做。 谢谢。
My service has a notification with an intent to launch the associated activity, but I find sometimes that when pressing back in my activity it returns to a previously loaded activity, so it looks like there are sometimes where there are more than one copy of the activity in memory. How can I avoid this? I suppose I must bring to front in case exist or launch a new one but dont know exactly how.
thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
在
AndroidManifest.xml
中添加android:launchMode="singleTask"
以及 as 属性,其中包含您只想运行 1 个实例的所需活动。例如,
您甚至可以使用
Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT
标记您的活动意图。这样,当活动已经运行时,它将被带到前面,而不是创建新的。
In you
AndroidManifest.xml
addandroid:launchMode="singleTask"
with the as attribute with the desire activity you want to run only 1 instance.e.g
You can even use
Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT
flag with you activity intent. So that when activity is already running it will be brought to front instead of creating new.
将标记 Intent.FLAG_ACTIVITY_CLEAR_TOP 添加到您的意图中
Add the flag Intent.FLAG_ACTIVITY_CLEAR_TOP to your intent