Whi*_*ind 19 apple-push-notifications ios firebase swift firebase-cloud-messaging
我正在尝试使用Firebase来处理推送通知.我安装了Firebasepod('Firebase/Core'和'FirebaseMessaging'pods).
在我将Firebase导入项目之后
import Firebase
Run Code Online (Sandbox Code Playgroud)
我已经像这样配置了Firebase应用程序(代码是从官方文档中复制的):
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?)
-> Bool {FIRApp.configure() }
Run Code Online (Sandbox Code Playgroud)
之后,我尝试使用此代码(代码从官方文档复制):
if #available(iOS 10.0, *) {
let authOptions : UNAuthorizationOptions = [.alert, .badge, .sound]
UNUserNotificationCenter.current().requestAuthorization(
options: authOptions,
completionHandler: {_,_ in })
// For iOS 10 display notification (sent via APNS)
UNUserNotificationCenter.current().delegate = self
// For iOS 10 data message (sent via FCM)
FIRMessaging.messaging().remoteMessageDelegate = self
} else {
let settings: UIUserNotificationSettings =
UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil)
application.registerUserNotificationSettings(settings)
}
application.registerForRemoteNotifications()
Run Code Online (Sandbox Code Playgroud)
但是我从标题中得到了错误:
使用未声明的类型UNAuthorizationOptions
我也有与UNUserNotificationCenter班级相关的错误.
我使用的是Swift 2.2和Xcode 7.3.1
这个错误的原因是什么?
Nir*_*v D 20
UserNotifications.framework可以从iOS 10获得,你使用Xcode 7.3意味着iOS 9及更低版本,所以你不需要添加它if #available(iOS 10.0, *) {,直接写其他部分并注册远程通知.
let settings: UIUserNotificationSettings = UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil)
application.registerUserNotificationSettings(settings)
application.registerForRemoteNotifications()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7707 次 |
| 最近记录: |