wifi断开连接后,我的重复闹钟无效

问题描述 投票:1回答:1

我的设备没有SIM卡或任何网络,除了wifi连接。

现在我正在为每天设置重复闹钟,当连接wifi时工作正常,但是当Android平板电脑上没有连接wifi时,它不能按时触发。

val pendingIntent = PendingIntent.getBroadcast(context, requestCode, archiveIntent, PendingIntent.FLAG_CANCEL_CURRENT)
        val alarms = context.getSystemService(Context.ALARM_SERVICE) as AlarmManager
        alarms.cancel(pendingIntent)
        alarms.setInexactRepeating(AlarmManager.RTC_WAKEUP, updateTime.timeInMillis, AlarmManager.INTERVAL_DAY, pendingIntent)

以下是我的观察:

  1. 假设我在晚上7:10设置了一个闹钟,当设备时间变为晚上7:10时,当wifi一直连接时,它会按预期接听电话。
  2. 现在同样的情况下,警报设置为晚上7:10,但是当设备时间变为7:10 PM但是那时wifi没有连接,现在7:11之后我在设备上打开我的wifi,就在我连接之后wifi在这种情况下,我之前设置的警报被调用了。

任何人都可以知道什么可能是什么原因警报不及时触发wifi未连接?

注意:在我的警报广播中,我正在启动WorkManager,它有一个限制,它应该只在连接了wifi网络时启动,但我相信WorkManager不应该影响我的警报触发器。

android alarmmanager android-wifi
1个回答
1
投票

看看这个answer

它与wifi无关,它的设置方式,尝试使用setRepeating而不是setInexactRepeating。差异在上面的答案很好地解释了。

编辑

最终在将标志更改为0之后将其工作,如下所示

val pendingIntent = PendingIntent.getBroadcast(context, requestCode, archiveIntent, 0)

传递0将带来任何现有警报或创建新警报。

© www.soinside.com 2019 - 2024. All rights reserved.