// Alarm list related // Save user setting in case user close the app public static void SaveAlarmListUserData(_AlarmListUserData ud) { BinaryFormatter bf = new BinaryFormatter(); string path = Application.persistentDataPath + "/AlarmListUserData.b2cud"; FileStream stream = new FileStream(path, FileMode.Create); bf.Serialize(stream, ud); stream.Close(); }
public static _AlarmListUserData LoadAlarmListUserData() { string path = Application.persistentDataPath + "/AlarmListUserData.b2cud"; if (File.Exists(path)) { BinaryFormatter bf = new BinaryFormatter(); FileStream stream = new FileStream(path, FileMode.Open); _AlarmListUserData ud = bf.Deserialize(stream) as _AlarmListUserData; stream.Close(); return(ud); } return(null); }
public static void SaveAlarmListToFile() { _AlarmListUserData ud = new _AlarmListUserData(); ud.nid = Notifications.Id; if (ui_alarmlist.Count > 0) { ud.numAlarms = ui_alarmlist.Count; ud.id = new int[ud.numAlarms]; ud.profile_idx = new int[ud.numAlarms]; ud.hr_dp_val = new int[ud.numAlarms]; ud.min_dp_val = new int[ud.numAlarms]; ud.ampm_dp_val = new int[ud.numAlarms]; ud.repeat_dp_val = new int[ud.numAlarms]; ud.ringer_dp_val = new int[ud.numAlarms]; ud.label_if_val = new string[ud.numAlarms]; for (int i = 0; i < ui_alarmlist.Count; ++i) { AlarmElement ae_comp = ui_alarmlist[i].GetComponent <AlarmElement>(); ud.id[i] = ae_comp.Id; ud.profile_idx[i] = ae_comp.profile_idx; ud.hr_dp_val[i] = ae_comp.hr_dp_val; ud.min_dp_val[i] = ae_comp.min_dp_val; ud.ampm_dp_val[i] = ae_comp.ampm_dp_val; ud.repeat_dp_val[i] = ae_comp.repeat_dp_val; ud.ringer_dp_val[i] = ae_comp.ringer_dp_val; ud.label_if_val[i] = ae_comp.label_if_val; } } else { ud.numAlarms = 0; ud.id = new int[] { }; ud.profile_idx = new int[] { }; ud.hr_dp_val = new int[] { }; ud.min_dp_val = new int[] { }; ud.ampm_dp_val = new int[] { }; ud.repeat_dp_val = new int[] { }; ud.ringer_dp_val = new int[] { }; ud.label_if_val = new string[] { }; } SaveSystem.SaveAlarmListUserData(ud); }
public void LoadAlarmListFromFile() { _AlarmListUserData ud = SaveSystem.LoadAlarmListUserData(); if (ud != null) { Notifications.Id = ud.nid; for (int i = 0; i < ud.numAlarms; ++i) { var newAlarm = Instantiate(AlarmElementPrefab, AppManager.Prefabs[2].transform); string time = (ud.ampm_dp_val[i] == 0) ? "上午 " : "下午 "; time += ud.hr_dp_val[i].ToString(); time += ":"; time += ud.min_dp_val[i] < 10 ? "0" + ud.min_dp_val[i] : ud.min_dp_val[i].ToString(); time += " "; var ae = newAlarm.GetComponent <AlarmElement>(); ae.TimeString.text = time; ae.Id = ud.id[i]; ae.profile_idx = ud.profile_idx[i]; ae.ringer_dp_val = ud.ringer_dp_val[i]; ae.Profile.sprite = ae.profile_sprites[ae.ringer_dp_val]; ae.hr_dp_val = ud.hr_dp_val[i]; ae.min_dp_val = ud.min_dp_val[i]; ae.ampm_dp_val = ud.ampm_dp_val[i]; ae.repeat_dp_val = ud.repeat_dp_val[i]; ae.label_if_val = ud.label_if_val[i]; ui_alarmlist.Add(newAlarm); } } else { // first time open app; iOSNotificationCenter.RemoveAllScheduledNotifications(); if (!Tutorial.playedTutorial) { Instantiate(AppManager.Prefabs[3], GameObject.Find("Tut").transform); } SaveAlarmListToFile(); } }