声音名称来自UNNotificationSound

时间:2016-07-30 12:59:21

标签: ios swift audio push-notification swift3

我正在使用CloudKit中的推送通知。这是我在Swift 3之前使用的:

notification.soundName = UILocalNotificationDefaultSoundName

(通知是CKNotificationInfo

然而,这给了我一个警告:

  

' UILocalNotificationDefaultSoundName'在iOS 10.0中已弃用:使用UserNotifications Framework' s [UNNotificationSound defaultSound]

所以我将UserNotification框架添加到我的Xcode项目中,然后将其导入到我的ViewController中。然后我尝试了这个:

notification.soundName = UNNotificationSound.default()

然而,这给了我一个错误:

  

无法指定类型' UNNotificationSound'的值输入' String?'

所以默认声音是UNNotificationSound,但我需要声音名称。如何从声音中获取声音名称?谢谢!

2 个答案:

答案 0 :(得分:2)

使用新的UserNotifications框架:

import UserNotifications

let content = UNMutableNotificationContent()
content.sound = UNNotificationSound.default()

let request = UNNotificationRequest(identifier: "id", content: content, trigger: nil)

答案 1 :(得分:2)

可悲的是,我认为这里的答案是,尽管我们已经通过新的UserNotifications框架获得了很多很棒的东西,但CloudKit和CKNotificationInfo并没有特别为它更新。

目前最好的选择是使用UILocalNotificationDefaultSoundName通常返回的内容,并使用"default"