在 Swift 中初始化 FCM
按照以下步驟在 swift Project 中新增 FCM
1-如果你還沒有 Xcode 專案,請立即建立一個。如果你沒有 Podfile,請建立一個:
$ cd 你的專案目錄
$ pod init
2-新增要安裝的 Pod。你可以在 Podfile 中包含 Pod,如下所示:
pod’Firebase /
Core’pod’Firebase / Messaging'
3-安裝 pod 並開啟 .xcworkspace 檔案以在 Xcode 中檢視專案。
$ pod install
$ open your-project.xcworkspace
4-從 plist 下載 GoogleService-Info.plist 檔案並將其包含在你的應用程式中。
5-將 APNs 證書上載到 Firebase。 APN 證書
6-在專案的 appDelegate 檔案中新增 import Firebase
7-在“application:didFinishLaunchingWithOptions”中新增“FIRApp.configure()
”
8-註冊遠端通知
if #available(iOS 10.0, *) {
let authOptions : UNAuthorizationOptions = [.Alert, .Badge, .Sound]
UNUserNotificationCenter.currentNotificationCenter().requestAuthorizationWithOptions(
authOptions,
completionHandler: {_,_ in })
// For iOS 10 display notification (sent via APNS)
UNUserNotificationCenter.currentNotificationCenter().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()
9-獲取註冊令牌
let token = FIRInstanceID.instanceID().token()!
10-如果你想監視令牌更改,請使用 appDelegate 檔案中的程式碼
func tokenRefreshNotification(notification: NSNotification) {
if let refreshedToken = FIRInstanceID.instanceID().token() {
print("InstanceID token: \(refreshedToken)")
}
// Connect to FCM since connection may have failed when attempted before having a token.
connectToFcm()
}
11-接收來自 fcm 的訊息在 appDelegate 中新增以下程式碼
func connectToFcm() {
FIRMessaging.messaging().connectWithCompletion { (error) in
if (error != nil) {
print("Unable to connect with FCM. \(error)")
} else {
print("Connected to FCM.")
}
}
}
12-和斷開連線使用
func applicationDidEnterBackground(application: UIApplication) {
FIRMessaging.messaging().disconnect()
print("Disconnected from FCM.")
}
在你的 appDelegate 中。
初始化完成,客戶端準備好從 fcm 面板接收訊息或從第三方伺服器傳送令牌