我有一个发送 http 请求的服务,它在后台运行并且在“正常模式”下工作正常。问题是当我将手机置于“省电模式”时,该服务无法正常工作。但是,像 Whatsapp 这样的应用程序仍然可以使用。你知道发生了什么事吗?
最佳答案
像 Whatsapp 这样的移动应用程序必须请求许可才能免除打瞌睡/省电和应用程序待机模式。
可以通过在设置 > 电池 > 电池优化 中配置白名单来手动配置此功能。
或者从 API 23 开始,您可以使用权限模型请求用户将他们列入白名单(引用 this )。来自 API 您还可以通过调用 isIgnoringBatteryOptimizations() 检查您的应用当前是否在白名单中
但是你需要满足某些criteria因为能够将自己列入白名单。否则,您在 Google Play 商店中维护应用程序时会遇到问题。
但大多数消息应用程序(如 Whatsapp)都是通过高优先级推送通知触发的,因此即使没有运行后台进程,它们也更有可能处于 Activity 状态。
关于java - 在节电模式 Android 上运行后台服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49639229/