特定时间的 IOS 本地通知

问题描述

以下是我想要实现的目标。 向用户显示有关日出/日落时间的本地通知。 假设日出时间是 05:30AM,日落时间是 06:30PM。 当前时间为 07:00PM,当用户启用通知功能时,每隔一小时显示一次 日出通知,信息时间为日出(即剩余 x 小时和 y 分钟) 一旦日出剩余时间少于 60 分钟,则将间隔从 1 小时更改为 10 分钟。最后,当日出剩下的时间少于 10 分钟时,则每分钟显示一次通知。当到达日出时间时,重复相同的日落时间。这一直持续到用户通过应用设置禁用此功能

如果不会耗尽电池电量,在通知显示倒数计时器也可以。

我所取得的是在特定时间触发本地通知。感谢任何指导。我是 IOS 开发新手。

let center = UNUserNotificationCenter.current()
      let content = UNMutableNotificationContent()
      content.title = title
      content.body = body
      content.categoryIdentifier = "sdf"
      
      if let info = userInfo {
        content.userInfo = info
      }
      
      content.sound = UNNotificationSound.default()
      
      var comp = Calendar.current.dateComponents([.hour,.minute],from: date)
      comp.minute = comp.minute! + 2
      
      let trigger = UNCalendarNotificationTrigger(dateMatching: comp,repeats: false)
      
      //let request = UNNotificationRequest(identifier: UUID().uuidString,content: content,trigger: trigger)
      
      let request = UNNotificationRequest(identifier: "test",trigger: trigger)
      
      center.add(request)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)