我有一个 Android 应用程序需要在后台保留。该实现(使用某些系统意图的接收器来触发操作(例如 WAP_PUSH_RECEIVED)和持久通知)已经成功并且多年来运行良好。
但自Android 14以来,应用程序被关闭(几个小时到几天后),通知也消失了。 (从 Android 13 开始,持久通知也可以被刷掉,但我们在测试中保持原样。)
我还没有使用过
android:foregroundServiceType
(引入了Android 10,但从Android 14开始强制?)。
无论如何,在所有这些“背景”之后,我的问题是应用程序是否可以检测到其正在关闭(类似于 SIGTERM)并获取原因代码。这至少可以帮助我更好地调试这个问题。
谢谢你。
我的问题是应用程序是否可以检测到其正在关闭(类似于 SIGTERM)并获取原因代码
不,抱歉。
这至少可以帮助我更好地调试这个问题。
在较新版本的 Android 上,您可以尝试在
getHistoricalProcessExitReasons()
上使用 ActivityManager
。这将告诉您为什么应用程序进程的“上一个”调用被终止。请参阅我的这本免费书的本节,了解有关如何使用它的更多信息。