android定期重复警报不起作用
Posted
技术标签:
【中文标题】android定期重复警报不起作用【英文标题】:android periodically repeating alarm not working 【发布时间】:2014-03-21 07:32:09 【问题描述】:我正在尝试每 30 分钟设置一次定期警报,但我认为它不起作用。我使用下面的代码:
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(MyActivity.this, Alarm.class);
PendingIntent alarmIntent = PendingIntent.getBroadcast(MyActivity.this, 0, intent, 0);
long selectedTimeMiliseconds = (long) (TimeUnit.MINUTES.toMillis(30));
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());
alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), selectedTimeMiliseconds, alarmIntent);
setInexactRepeating方法中如何设置第二个参数?使用 setRepeating 方法更好吗?
【问题讨论】:
【参考方案1】:不精确是一种节省电池的方法,但它是……不精确。
AlarmManager 有问题,如果设备处于睡眠模式,intent 无法启动。您应该使用 WakefulBroadCast。
https://developer.android.com/reference/android/support/v4/content/WakefulBroadcastReceiver.html
【讨论】:
【参考方案2】:试试这个..
alarmManager.setRepeating(AlarmManager.RTC, calendar.getTimeInMillis(), selectedTimeMiliseconds, alarmIntent);
【讨论】:
以上是关于android定期重复警报不起作用的主要内容,如果未能解决你的问题,请参考以下文章
AngularJS Bootstrap 警报关闭超时属性不起作用
JavaScript 警报在 Android WebView 中不起作用
Android 警报管理器 setExactAndAllowWhileIdle() 在打盹模式下的 Android 7.0 Nougat 中不起作用