获取之前添加到AlarmManager的闹钟时间

时间:2013-11-03 20:39:42

标签: android alarmmanager android-alarms

我正在使用AlarmManager类在特定时间每天通知用户(用户将从时间选择器中选择时间) 每件事都很有效率al7mdllah ^^ 但我希望从alarmManger中获取该时间并将其显示在应用程序中以获得更好的用户体验 有什么方法可以获得闹钟时间吗?

这是我的代码

public void witer_reminder(View view)
{
    am = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

    Intent intent = new Intent(this, Witer_Notification.class);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0,
        intent, PendingIntent.FLAG_CANCEL_CURRENT);

    Calendar cal = Calendar.getInstance();
    Calendar calSet = (Calendar) cal.clone();

    calSet.set(Calendar.HOUR_OF_DAY, picker.getCurrentHour());
    calSet.set(Calendar.MINUTE,picker.getCurrentMinute());
    calSet.set(Calendar.SECOND, 0);
    calSet.set(Calendar.MILLISECOND, 0);

     if(calSet.compareTo(cal) <= 0){
            //Today Set time passed, count to tomorrow
            calSet.add(Calendar.DATE, 1);
           }

      am.setRepeating(AlarmManager.RTC_WAKEUP, calSet.getTimeInMillis(),
              24*60*60*1000, pendingIntent);



}

1 个答案:

答案 0 :(得分:4)

  

但我希望从alarmManger中获取该时间并将其显示在应用程序中以获得更好的UX有没有办法获得闹钟时间?

在设置事件时,将其保存在某处持久性(文件,数据库,SharedPreferences)。 AlarmManager是只写的;您无法从中检索有关预定活动的信息。