AlarmManager在模拟器中触发,但不在物理Oreo设备上触发

时间:2019-05-22 09:01:13

标签: android alarmmanager background-process

我们正在后台运行一些警报服务,并且它在Oreo模拟器中运行,但是在实际设备上却无法运行。谁能说出我的代码为什么失败?

val alarmIntent = Intent(this, NetworkChangeReceiver::class.java) 
val pendingIntent = PendingIntent.getBroadcast(this, 0, alarmIntent, PendingIntent.FLAG_UPDATE_CURRENT) 
val calendar = Calendar.getInstance() 
calendar.setTimeInMillis(System.currentTimeMillis()); 
calendar.add(Calendar.MINUTE, 1) 
val manager = getSystemService(Context.ALARM_SERVICE) as AlarmManager 
manager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.timeInMillis, 1000 * 60, pendingIntent)

另一个选择是使用工作管理器,但仅每15分钟工作一次。

1 个答案:

答案 0 :(得分:1)

后台服务在某些设备中不起作用,例如Vivo:ColorOs OnePlus:OxygenOs MI:FunTouchOs。 。 。

More information check this below url.

https://stackoverflow.com/a/52373492/7387028