gpt4 book ai didi

uilocalnotification - iOS 13 本地通知未发送

转载 作者:行者123 更新时间:2023-12-03 14:55:13 25 4
gpt4 key购买 nike

我每天早上 8 点都会设置一个重复发生的本地通知。这在每个 iOS 中都运行良好,除了当我更新到 iOS 13+ 时,它不再发送我的本地通知。该部分没有代码更改。我见过有人在 iOS 13 上遇到推送通知问题,但这是一个本地问题,所以我不知道为什么它突然停止在 iOS 13 上工作。我尝试使用 xcode 10 和 11。

如果有人需要发布代码,我可以得到,但我很好奇是否有人在本地通知和 iOS 13 上遇到过这个问题。

最佳答案

我想我想通了!

至少对我来说,用 UNCalendarNotificationTrigger 设置触发器没有用。但是,如果我使用 UNTimeIntervalNotificationTrigger相反,它很好用!

这是我的代码:

let now = Date(timeIntervalSinceNow: 0)

// If event has already occured, silently fail.
if (timelineEvent.event.time < now) {
return
}

// Otherwise, let's calculate the time until the next event
let interval = timelineEvent.event.time.timeIntervalSince(Date(timeIntervalSinceNow: 0))
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: interval, repeats: false)

如果您严格针对 iOS 13 及更高版本,则可以稍微简化日期比较:

let now = Date(timeIntervalSinceNow: 0)

// If event has already occured, silently fail.
if (timelineEvent.event.time < now) {
return
}

// Otherwise, let's calculate the time until the next event
let interval = now.distance(to: timelineEvent.event.time)
let trigger = UNTimeIntervalNotificationTrigger(timeInterval: interval, repeats: false)

奇怪的是, Date().distance(to: Date)似乎仅适用于 iOS 13+,但是文档说它从 iOS 7.0 开始可用。

关于uilocalnotification - iOS 13 本地通知未发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58402170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com