private void setNewAlarm(List<Alarm> alarmArrayList) {
for (Alarm alarm : alarmArrayList) {
Log.d("setNewAlarm======", "alarm == > " + alarm);
- if ("ON".equals(alarm.status)) {
+ ICLogger.d("status ==> " + alarm.status);
+ if ("ON".equals(alarm.status) || "ONCE".equals(alarm.status)) {
alarm.time = alarm.time.replace(":", "");
int hour = Integer.parseInt(alarm.time.substring(2, 4));
int minute = Integer.parseInt(alarm.time.substring(5, 7));
ICLogger.d("idStr ==> " + idStr);
//Id==> 闹钟ID+星期
int flag = itemWeek.equals("0") ? 0 : 2;
+ if ("ONCE".equals(alarm.status)) {
+ flag = 0;
+ }
+ ICLogger.d("flag ==> " + flag + " name ==> " + alarm.name);
AlarmManagerUtil.setAlarm(mContext, flag,
hour,
minute,
}
+
//设置闹钟
public void handleBP85(String cmd, Connection connection, Runtime runtime) {
// IWBP85,867155030001063,155312,1,1,0235,12,1,1
}
/**
- * 闹钟数据
+ * 吴鹏原话:这样改,应该是改动最小了。
+ * 单组闹铃的开关(1,0),扩展一个标记2表示开启的单次闹铃,不按星期循环。
*
* @param mRuntime
* @param cmd
//第三个是循环星期
String weekItem = itemDetail[2];
ICLogger.d("weekItem == > " + weekItem);
- //第四个是开关
+ //第四个是开关,有可能是 2,如果是2的话,那么就是单次响铃
String isOpen = itemDetail[3];
ICLogger.d("isOpen == > " + isOpen);
//如果是全部关闭,那么所有的闹钟都会为0
ICLogger.d("date ERROR...");
continue;
}
+ String status = "ON";
+ if ("0".equals(isOpen)) {
+ status = "OFF";
+ } else if ("1".equals(isOpen)) {
+ status = "ON";
+ } else if ("2".equals(isOpen)) {
+ status = "ONCE";
+ }
Alarm alarmItem = new Alarm("ST" + hour + "." + minute,
- "W" + weekItem, "CON", "1".equals(isOpen) ? "ON" : "OFF", alarmName);
+ "W" + weekItem, "CON", status, alarmName);
ICLogger.d("alarmItem == > " + alarmName);
//入库
ICLogger.d(" alarmItem.name==> " + alarmItem.name);