- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建我的应用程序以在 IOS swift 4 中触发每日、每周和每月的通知。这些通知使用公历完美运行。但是,当我将日期更改为 Hijri 日历 (Calendar(identifier: .islamicUmmAlQura) 它不会工作。它接缝 UNCalendarNotificationTrigger 将任何日期转换为公历。以下每月通知代码在使用公历时完美运行:
func myNotification(at date: Date, withTitle title:String, andBody body:String, notificationIdentifier:String) {
let calendar = Calendar(identifier: .gregorian)
let components = calendar.dateComponents([.day,.hour, .minute], from: date)
let trigger = UNCalendarNotificationTrigger(dateMatching: components, repeats: true)
let content = UNMutableNotificationContent()
content.title = title
content.body = body
content.sound = UNNotificationSound.init(named: "notificationSound.wav")
let request = UNNotificationRequest(identifier: notificationIdentifier, content: content, trigger: trigger)
UNUserNotificationCenter.current().removePendingNotificationRequests(withIdentifiers: [notificationIdentifier])
UNUserNotificationCenter.current().add(request) {(error) in
if let error = error {
print(" error: \(error)")
}
}
当我使用 (Calendar(identifier: .islamicUmmAlQura) 将日期转换为伊斯兰日期时,以下代码不起作用:
func myNotification(at date: Date, withTitle title:String, andBody body:String, notificationIdentifier:String) {
let calendar = Calendar(identifier: .islamicUmmAlQura)
let components = calendar.dateComponents([.day,.hour, .minute], from: date)
let trigger = UNCalendarNotificationTrigger(dateMatching: components, repeats: true)
let content = UNMutableNotificationContent()
content.title = title
content.body = body
content.sound = UNNotificationSound.init(named: "notificationSound.wav")
let request = UNNotificationRequest(identifier: notificationIdentifier, content: content, trigger: trigger)
UNUserNotificationCenter.current().removePendingNotificationRequests(withIdentifiers: [notificationIdentifier])
UNUserNotificationCenter.current().add(request) {(error) in
if let error = error {
print(" error: \(error)")
}
}
最佳答案
将.calendar
添加到组件中,这将使UNCalendarNotificationTrigger
使用您的日历计算日期。
let date = Date()
let calendar = Calendar(identifier: .gregorian)
let components = calendar.dateComponents([.calendar, .day, .hour, .minute], from: date)
let trigger = UNCalendarNotificationTrigger(dateMatching: components, repeats: true)
关于ios - 使用非公历创建 UNNotification,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47954703/
Sleep Cycle 应用程序设法发送本地通知并播放声音,即使我在手机上启用了“请勿打扰”。 你是怎么做到的? 最佳答案 好吧,可以通过在配置本地通知时启用 UNNotificationSettin
我正在构建我的应用程序以在 IOS swift 4 中触发每日、每周和每月的通知。这些通知使用公历完美运行。但是,当我将日期更改为 Hijri 日历 (Calendar(identifier: .is
我想在用户选定的时间之间向用户显示本地通知,并每半小时重复一次该通知,直到选定的时间限制到来,并且每天重复一次该通知。我用过这段代码 let components = calendar.dateCom
我无法跨时区正确触发 iOS 10 本地通知 (UNNotification)。 在时区 +10 小时,我希望它在 17:00:00 触发,并安排它。 稍后当我查看安排了哪些通知时,我得到了它的下一个
有一个选项可以设置 UILocalNotification 的重复间隔。由于 Apple 已弃用 UILocalNotification 并建议改用 UNNotification,因此我找不到使用 U
如何在 UNNotificationContentExtension 中执行打印语句? 目前,当我运行应用程序时,我按“运行”,但是当我仍然连接到 Xcode 时打开通知内容扩展时,没有任何显示。这使
我的 AppDelegate 中有这个: @available(iOS 10.0, *) func didReceive(_ request: UNNotificationRequest,
多年来,我注意到 Apple 在使用 Swift 时放弃了诸如“NS”之类的前缀。现在,当我浏览本地通知教程时,我看到 UIUserNotificationSettings 已被弃用,它要求我们改用
Apple 引入新的扩展名 "UNNotificationServiceExtension" , 但如何从推送通知启动它? 我读到服务扩展为负载提供端到端加密。 设置推送通知的负载需要哪个键? 如何识
我有一个函数可以设置 UNNotificationRequest传入一些参数后,我将这些参数放入 userInfo 中这样我就可以取回它们并在打开本地通知时使用它们。它的打印显示我正在分配传入的正确值
我需要模拟 UNNotificationResponse 和 UNNotification 以便我可以测试我的实现: func userNotificationCenter(_ center: UNU
我是一名优秀的程序员,十分优秀!