设置闹钟

/**
    * 设置闹钟
    * @param hourOfDay
    * @param minute
    * @return
    */
   public static String setAlam(int hourOfDay, int minute,Context context,int id) {
      // TODO
//    Intent intent = new Intent(context, PenaltyAlarmActivity.class);

      Intent intent = new Intent(action);
      PendingIntent pi = PendingIntent.getBroadcast(context, 0, intent,
            PendingIntent.FLAG_UPDATE_CURRENT);
//    PendingIntent pi = PendingIntent.getActivity(context, id, intent, 0);
      DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      
      Date date = null;
      try {
         date = df.parse(CommonUtil.getYearMouthDayTime()+hourOfDay+":"+minute+":00");
      } catch (ParseException e) {
         e.printStackTrace();
      }
      
      Calendar c = Calendar.getInstance();
      c.setTimeInMillis(System.currentTimeMillis());
      c.set(Calendar.HOUR_OF_DAY, hourOfDay);
      c.set(Calendar.MINUTE, minute);

      String alarm_text = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(c
            .getTimeInMillis()));

      AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
      
      if(hourOfDay < CommonUtil.getHourTime() || (hourOfDay == CommonUtil.getHourTime() && minute < CommonUtil.getMinutesTime())){
         alarmManager.set(AlarmManager.RTC_WAKEUP, c.getTimeInMillis()+24*60*60*1000, pi);
      }else{
         alarmManager.set(AlarmManager.RTC_WAKEUP, c.getTimeInMillis(), pi);
      }
      
      LogUtil.e("设置闹钟=" +df.format(new Date(c.getTimeInMillis())));
      
      return alarm_text;
   }





// 根据设置闹钟的时间,重新设置一下闹钟
alarm_one = ConfigManager.getString(this, Constant.PENALTYONE,
      "0000-00-00 09:00:00");
alarmTwo = ConfigManager.getString(this, Constant.PENALTYTWO,
      "0000-00-00 20:00:00");
alarmThree = ConfigManager.getString(this, Constant.PENALTYTHREE,
      "0000-00-00 10:15:00");

String[] one = (alarm_one.substring(11, 16)).split(":");
String[] two = (alarmTwo.substring(11, 16)).split(":");
String[] three = (alarmThree.substring(11, 16)).split(":");

CommonUtil.setAlam(Integer.parseInt(one[0]), Integer.parseInt(one[1]),
      context, 111);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值