问题
I know that some peoples view is that you should not create persistent services.
But for those of us that want to increase our knowledge, how does one go about creating one in theory?
I have been playing around, and noticed that services that use startForeground are killed in low memory situations.
I have seen a, now deprecated, permission PERSISTENT_ACTIVITY, but that didn't do much.
So what is the secret?
回答1:
You can only make your service persistent if you are developing system apps. These services will be basically un-killable, and are labeled as "PERS" in the output of the "adb shell dumpsys activity" command. It's not very well documented, so I did a quick write-up on Persistent services in Android...hopefully it will help some people out.
But for non-system apps, startForeground is your best option.
回答2:
There is absolutely no way of preventing the OS from killing your service.
来源:https://stackoverflow.com/questions/4708827/persistent-service
本文探讨了在Android中创建持久服务的方法,特别指出系统应用可通过特殊权限实现基本不可杀死的服务,而非系统应用则需依赖startForeground。了解如何在理论层面操作,以及OS如何管理服务的内存情况。
1458

被折叠的 条评论
为什么被折叠?



