我想添加一个警报,所以我使用了以下代码:
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);
}
知道我做错了什么吗? 谢谢!
答案 0 :(得分:1)
可能alarm.getAlarmTime().toMillis(true)
不在SystemClock.elapsedRealtime()
的时基中。如果getAlarmTime()
返回android.text.format.Time
个对象,则肯定不正确。