代码适用于Android 5,6和8.1。只是不在我的Moto G5 Plus(7.0)测试设备上。有点困惑。
public void startEMAAlarm(){
Log.d(TAG, "startEMAAlarm: in start ema alarm");
Calendar cal = Calendar.getInstance();
long when = cal.getTimeInMillis();
cal.setTimeInMillis(System.currentTimeMillis());
cal.set(Calendar.HOUR_OF_DAY, 10);
cal.set(Calendar.MINUTE, 30);
AlarmManager alarmMgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(this, EMAAlarmReciever.class);
startEMAIntent = PendingIntent.getBroadcast(this, 0, intent, 0);
alarmMgr.setInexactRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 1000 * 60 * 5, startEMAIntent);
Log.d(TAG, "startEMAAlarm: alarm should be set");
}
在我的清单中:
<receiver android:name=".EMAAlarmReciever"/>
当我运行它时,EMAAlarmReciever中的onReceive中的日志消息不会运行!虽然它在大约7个其他手机上,但我只有一个7.0设备可供测试。
我想我必须遗漏一些简单的东西,只是不确定它是什么。任何帮助赞赏。谢谢!
答案 0 :(得分:0)
好的,有问题的手机是Moto G5 Plus,由于某种未知的原因,它只需要24小时才能开始工作,而其他手机则立即启动。将随机Android碎片问题再解决一个问题。