问题
I have made an app that allows one to listen to the radio and have implemented an alarm so that I can have the radio play when the alarm goes off. I am using the alarmManager and RTC_wakeup, and it seems to work fine if the phone is plugged in or if the phone is not asleep (which kind of defeats the purpose). When the phone is unplugged and asleep, however, the alarm does not go off until I wake up the phone.
Does anyone know a solution to this?
回答1:
This is how we did it and it works in both case that you describe:
PendingIntent pi = null;
private void startMonitor() {
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(this, OnTickReceiver.class);
pi = PendingIntent.getBroadcast(this, 0, i, 0);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,
System.currentTimeMillis() + 120 * 1000, 120 * 1000, pi);
}
private void stopMonitor() {
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmManager.cancel(pi);
}
来源:https://stackoverflow.com/questions/5262641/can-i-wake-up-my-android-when-it-is-unplugged-and-sleeping