我正在开发实时位置跟踪应用程序,并通过使用前台服务将当前位置更新到服务器。
现在我可以在设备处于深度 sleep 状态时保持应用程序处于 Activity 状态。但是由于网络访问在 Doze 模式下暂停,我无法在服务器上更新它。
根据谷歌开发者指南的建议,我们可以通过使用高优先级 FCM 消息来解决这个问题。
但就我而言,如何在网络访问暂停时通知服务器推送通知(需要通过操作系统或手动识别互联网访问禁用)。
最佳答案
一种方法是注册行动-
"android.os.action.DEVICE_IDLE_MODE_CHANGED"
这将在设备模式发生变化时广播,然后使用以下方法确定设备处于打瞌睡/非打瞌睡状态:
PowerManager pm = (PowerManager)context.getSystemService(Context.POWER_SERVICE);
boolean isDeviceIdle = pm.isDeviceIdleMode();
关于android - 如何在打瞌睡模式下持续激活互联网棉花糖和牛轧糖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42241852/