Android AlarmManager设置功能不起作用?

时间:2010-10-19 20:40:55

标签: android alarm alarmmanager

我想添加一个警报,所以我使用了以下代码:

    public void SetAlarm(Alarm alarm)
{
    mTimeTarget = PendingIntent.getBroadcast(mContext, alarm.getRowID(), 
            new Intent(HomeScreen.ACTION_CHECK_TIME_ALARMS), PendingIntent.FLAG_UPDATE_CURRENT);
    mAlarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, alarm.getAlarmTime().toMillis(true), mTimeTarget);
}

但这似乎不起作用。 (我试过模拟器,当时间 没有任何反应 - 我的类上的onReceive函数没有调用BroadcastReceiver。)

以下是我在构造函数上初始化mAlarmManager的方法(它是私有的,因为这个类是单例):

    private AlarmsManager(Context con)
{
    mContext = con;

    mAlarmManager = (AlarmManager) con.getSystemService(Context.ALARM_SERVICE);
}

知道我做错了什么吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

可能alarm.getAlarmTime().toMillis(true)不在SystemClock.elapsedRealtime()的时基中。如果getAlarmTime()返回android.text.format.Time个对象,则肯定不正确。