使用AlarmManager时,Android设备有时会从睡眠中唤醒.
Android如何在较低级别安排唤醒时间?
我尝试使用rtcwake,但由于rtcwake失败:/ dev / rtc0未启用唤醒事件(如果我强制rtcwake继续进行并进行必要的操作,我仍然看不到设备被及时唤醒)
Android使用哪个系统调用来设置警报,以及如何通过控制台自己进行设置?
解决方法:
Android使用/ dev / alarm设备设置警报,该警报可以将系统从挂起状态唤醒.
从JNI,它可以使用ioctl访问此设备.请参阅frameworks / base / services / jni / com_android_server_AlarmManagerService.cpp文件.
Android对此设备具有独占访问权,据我了解,该接口仅可通过使用AlarmManager服务的Java使用.
如果您需要在Java级别设置这些警报,则可以使用getSystemservice(ALARM_SERVICE)来访问此服务,这从本地开始就比较棘手,我目前也遇到了同样的问题.我在本机进程中需要警报,并且我正在使用套接字与Java服务进行通信以安排警报.这可能不是您要找的答案,但我想分享我的经验.