我可以在后台保持Android App活着吗?

Tho*_*mas 4 android

我目前编写了一个正常的Andorid-App(无服务).它包含一个定期检查的计时器.为了避免服务和应用程序之间的服务和通信的麻烦,我问自己是否有办法让不再处于前台的应用程序存活.目前,当我"关闭"应用程序时,它仍然存在,直到Android OS决定杀死它.有没有办法避免这种杀戮 - 例如通过"onDestroy"中的某个命令或某个App-flag?我的应用程序非常复杂,我不想实现服务,因为这特别是通信/绑定 - 增加了复杂性.有一种"简单的方法"还是我真的被迫使用Service + App?也许有一个技巧来注册应用程序...... 特殊的,具有Android OS在后台时不会杀死它的副作用.

编辑以便更好地理解:当用户需要时,GUI可以进入后台(消失),所以我的问题不是如何让我的应用程序的GUI永久保留在前台.我想要的是计时器保持完整,无需额外的服务.

提前谢谢大家的想法!

jjN*_*ord 6

由于操作系统的杀戮选择的性质和市场的碎片化,Android非常难以预测.如果它至关重要,我不会100%依赖任何活着的东西.但是你可以赌博并且非常成功.这对你有帮助:

  1. 使用非常好的"最佳实践"来保持你的字符串池和堆最小,因为Android看起来首先要杀掉内存猪(因为你喜欢你做的事情).
  2. 将persistent属性添加到应用程序清单 标记.
  3. 要真正帮助自己,运行,或运行服务,因为它们是长时间运行的进程,非常轻(如果实现良好),Android看起来最终杀掉这些.
  4. 通过将其作为前台服务运行来提供服务优先级.

做这些事情会增加Android不会杀死你的应用程序的可能性.


bar*_*rry 1

我认为没有类似的东西可用。我建议查看 AlarmManager 来执行定期任务 - 这可能意味着您不需要使用服务。