2

我制作了一个应用程序,允许人们收听收音机并实现了闹钟,这样我就可以在闹钟响起时播放收音机。我正在使用alarmManager 和RTC_wakeup,如果手机已插入或手机没有睡着(哪种方式违背了目的),它似乎工作正常。但是,当手机拔掉电源并进入睡眠状态时,直到我唤醒手机,闹钟才会响起。

有谁知道解决这个问题?

4

1 回答 1

1

这就是我们的做法,它适用于您描述的两种情况:

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);
}
于 2011-03-12T07:06:05.713 回答