我有一个由 3 个活动 A、B 和 C 组成的 Android 应用程序:
- A 是应用程序本身(一个常规的 Activity)
- B 是设置屏幕(使用 PreferenceActivity 制作)
- C 是关于屏幕(常规活动)
活动之间的关系如下:
- A是主要活动
- B的父母是A
- C的父母是B
Activity A 在进入后台时会发出通知,这是通过在 A 的 onStop() 方法中调用 NotificationManager 的 notify() 来完成的。
当用户启动应用程序时,它从活动 A 开始,然后如果用户按下主页按钮,则会在显示主屏幕时立即发出通知。单击通知将使用户返回应用程序。
一切似乎都正常,但现在有一种我不喜欢的行为:当用户启动应用程序然后进入设置(因此显示活动 A,然后显示 B)时,也会引发通知(因为 A 已经进入后台以便显示 B)。
这是不希望的:仅当应用程序进入后台时才应引发通知,而不管用户正在查看的活动如何。
如何实现这种正确的行为?
在此先感谢,马可