Android - 如何区分活动重新启动和“正常”活动开始
我试图区分活动是被销毁然后重新启动还是通过标准 startActivity 调用启动。区分这一点的最佳方法是什么?我需要跟踪一个计数器,当应用程序被销毁并重新启动时,计数器不应该增加。我尝试使用 putExtra(String, String),但返回的值无论如何都是相同的。
I'm trying to distinguish if an activity is destroyed then restarted vs. when it's started via standard startActivity call. What's the best way to distinguish this? I need to track a counter, and the counter should not be incremented when the app has been destroyed and restarted. I tried using putExtra(String, String), but the value returned is the same regardless.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以尝试使用标志 isSavedInstanceState。在 onResume 中将此标志设置为 false。在 onSaveInstanceState 中将此标志设置为 true。在 onStop 中检查此标志。
这将增加你的硬杀计数器。如果需要,您可以在 onCreate 中检查捆绑包是否为空捆绑包,但我尚未完全测试该逻辑。
You could try using a flag isSavedInstanceState. Set this flag to false in onResume. Set this flag to true in onSaveInstanceState. Check this flag in onStop.
This will increment your counter on a hard kill. You could check the bundle in onCreate for a null bundle if you want, but I have not fully tested that logic.