我们开发了具有可比要求的SIP应用程序。
有一个重要的设置,您的用户必须使用他们的设备,您不能在应用程序中执行此操作。
他们需要转到设置 - >数据 - >背景数据并打开“无限背景数据”。 此外,他们应该将应用程序设置为“未优化”以进行电池优化,因此如果Android不断耗尽电池,Android将不会将其杀死/让其进入睡眠状态。 这些是设置,应用程序根本无法做到。它必须由用户完成。
另外,你是对的,只有CPU的Wakelock(即没有 TURN_SCREEN_ON flag)是要走的路。
TURN_SCREEN_ON
但你应该避免让唤醒锁“永远”打开,因为机器人可能会杀死它。
我会做这样的事情:
这是一个后台线程将在第一个唤醒锁定时间之前重新获取另一个唤醒锁。
我希望你明白这个主意。