3

在一个应用程序中,我必须定期将数据同步到服务器,这发生在 5 分钟的固定间隔(大部分)。

我正在使用set()/setExact()取决于 if Build API >= 19。现在,在大多数情况下,警报会被触发并且可以正常工作,但间歇性(即使在白天)警报不会被触发。

警报管理器被传递一个pendingIntent用于IntentService同步工作的。

而且onHandleIntent我也在运行我的setSchedule(),它反过来会在 5 分钟后发出警报(与上面相同^)。

使用警报类型RTC_WAKEUP(直到现在;我最近将其更改为elasped realtime + wakeup并等待一些测试结果)和每个 30 秒的HTTP connectionsocket timeout。该设备在 48 小时以上(作为示例)持续时间之间没有重新启动,因为我不会错过任何捕获的数据,只是同步警报以某种方式跳过。

我开始怀疑这是否是一个wakelock问题:|

有人遇到过 Kitkat 的问题setExact()吗?AFAIK,它的方式(除了使用 RTC/elasped realtime change)当前的方式不应该跳过警报。

4

0 回答 0