gpt4 book ai didi

android - 为什么当应用程序被杀死时 AlarmManager 广播会被取消?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:30:36 27 4
gpt4 key购买 nike

好的,我注册了两个 BroadcastReceiver。当应用程序关闭时,它们都会在适当的时间触发并做适当的事情。

如果应用程序关闭然后被杀死(比如使用 AppKiller),接收者将永远不会收到他们的广播,并且什么也不会发生。

如果父应用程序由于内存不足而被终止,大概会发生同样的事情,那么我如何确保这些广播被触发/接收。 API声明即使应用程序被杀死它也应该开火,其他人有没有遇到过这种情况?

如果它对我的 list 有帮助:

<!-- receivers for AlarmManager --> 
<receiver
android:exported="true"
android:label="Shift roster updating calendar."
android:name="com.skooter.shiftroster.backend.service.UpdateCalendar"
>
</receiver>
<receiver
android:exported="true"
android:label="Shift roster checking alarm."
android:name="com.skooter.shiftroster.backend.service.SetWakeup"
>
</receiver>

AlarmManager/BroadcastReceivers 中没有发生任何深奥的事情

最佳答案

Presumably the same thing happens if the parent app is killed due to low memory

你猜错了。所谓的“任务 killer ”正在利用一种特定的 API,这种 API 不会在低内存条件下使用。 “任务 killer ”API 破坏了一切,包括预定的警报。

此外,希望您的父应用程序一开始就不在内存中。使用 AlarmManager 的全部意义在于,您的“父应用程序”不会在不执行任何操作时占用内存。

关于android - 为什么当应用程序被杀死时 AlarmManager 广播会被取消?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2840750/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com