Firebaseを使用してプッシュ通知を処理しようとしています。 Firebase
ポッド( 'Firebase/Core'および 'FirebaseMessaging'ポッド)をインストールしました。
Firebaseをプロジェクトにインポートした後
import Firebase
私はこのようにFirebaseアプリを設定しました(コードは公式ドキュメントからコピーされます):
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?)
-> Bool {FIRApp.configure() }
その後、私はこのコードを使用しようとしました(コードは公式ドキュメントからコピーされます):
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()
しかし、私は言うタイトルからエラーを得ました:
宣言されていないタイプUNAuthorizationOptionsの使用
また、UNUserNotificationCenter
クラスに関連する同じエラーが発生しています。
Swift 2.2とXcode 7.3.1を使用しています
このエラーの原因は何ですか?
_UserNotifications.framework
_はiOS 10から利用可能で、iOS 9以下でXcode 7.3を使用しているため、そのif #available(iOS 10.0, *) {
を追加し、他の部分のみを直接書き込み、リモートで登録する必要はありません。通知。
_let settings: UIUserNotificationSettings = UIUserNotificationSettings(forTypes: [.Alert, .Badge, .Sound], categories: nil)
application.registerUserNotificationSettings(settings)
application.registerForRemoteNotifications()
_
必要がある import UserNotifications
それらのフレームワークを呼び出す前に。そして、Nirav Dの発言は本当です。これはiOS 10の新しいフレームワークであり、正しい展開ターゲットを選択することも忘れないでください。