Android 推播通知
必要條件
設定 Android 通知通道
Firebase 設定
您必須使用並同步三個 Google 網站。在 Google/Firebase 中,同時有專案和應用程式:-
專案:
- 如果您的專案尚未在 Firebase 主控台中,請將其匯入。
-
應用程式:
- Firebase 專案包含應用程式。
- 確認您的應用程式在兩個位置都存在,且名稱和識別碼相同 (例如 Unicorn Battle 和 com.playfab.unicornbattle2)。
PlayFab 需要伺服器私密金鑰檔案
- 您可以從 Firebase 主控台取得此私密金鑰檔案
- Firebase 主控台:
- 選取您的專案或應用程式,然後找到 Settings 選項 (有許多方式可以做到,所有方式都會帶您到同一個地方)。
- 在 Service accounts 索引標籤中,選取 Generate new private key 按鈕以下載 JSON 檔案。
使用私密金鑰檔案
-
以下列兩種方式之一提供您的私密金鑰檔案:
- 將私密金鑰檔案直接上傳至 Game Manager UI:(您遊戲的) Settings > Push Notifications > Android。
- 或使用 Postman 或已啟用 Server API 方法的 Unity 專案呼叫 SetupPushNotification。
- Name:your_game_name
- Platform:GCM
-
Credential:(私密金鑰檔案內容的字串形式):
{ ... } -
Overwrite OldARN:
true -
您應該會收到 HTTP 200 OK 回應,其資料類似下列內容。
-
正確設定後 (使用任一方法),您應該會在 Game Manager UI 的 (您遊戲的) Settings > Push Notifications > Android 中看到此內容。

開始使用:Android + Unity 的推播通知
若要設定您的 Unity 專案:- 建立新的 Unity 專案。
- 選用 匯入 PlayFab Unity Editor Extensions 套件。
- 匯入 Unity PlayFab SDK 套件。
-
依照 FCM Unity 指南安裝 FCM 通訊,並設定推播通知專案。
- 完成後,您可以繼續依照本指南接收來自 PlayFab 的訊息。
- 我們將在下列範例中提供一個完整且可直接用於 FCM 的 monoBehaviour 指令碼,其中結合了 FCM 和 PlayFab。
-
在 FCM 指南中,您建立了一個設定 Firebase 外掛程式的 monobehavior 指令碼。
- 您可以繼續使用該 monobehavior 指令碼,或將其取代為下列範例中的指令碼。
設定您的第一個推播通知
在 Unity 中,開啟您在 FCM 教學課程中建立的指令碼,並取代其內容。PlayFabSettings.TitleId = TITLE_ID。您必須設定自己的 TitleId。如果您不更新此 TitleId,此範例將無法運作,因為我們的遊戲是以我們的 Firebase 金鑰和設定註冊的,而不是您的。您可以取消註解此行,並將 TITLE_ID 取代為您的 titleId,或者您可以從上一節提到的選用 Editor Extensions 外掛程式中選擇您的遊戲。Android 疑難排解
-
確認您可以從 Firebase 主控台傳送測試推播通知。
- 如果無法傳送,表示您的 Firebase 外掛程式未正確設定,您應該檢閱 Firebase 文件以找出原因,或聯絡 Firebase 支援。
-
確保您的 FCM 用戶端 pushToken 已正確設定。
- 範例中的
OnTokenReceived函式應該會被呼叫,並且應該具有有效的權杖。 - 如果它沒有被呼叫,表示您的 Firebase 外掛程式未正確設定,您應該檢閱 Firebase 文件以找出原因,或聯絡 Firebase 支援。
- 範例中的
-
確保您的
titleId已設定為您擁有的遊戲,且該遊戲已使用 Firebase 專案中的伺服器 API 金鑰註冊。
進階功能
在 server.SendPushNotification 中,您可以使用 request.Package.CustomData 將任意資料傳遞至裝置。在先前的範例中,這會傳遞至具有下列註解的區段。協力廠商外掛程式傳遞不受支援也不提供保證,但可供進階使用者使用。
