整合Unity 訊息推播SDK 打群架 ChatGPT 還教錯?放心,這篇一篇教你全搞定

更新 發佈閱讀 7 分鐘
raw-image

在為 Unity 遊戲整合推播通知時,你可以問ChatGPT要教學 ,但說實話——它有時提供的程式碼不是過時,就是不正確。

問ChatGPT只是給個方向,細節仍然需要自行檢查、除錯並修復問題,才能讓整個流程順利運作。

在本教學中,我會教你一步步帶你完成如何使用 Firebase 無痛整合推播通知——更重要的是,如何在整合推播 SDK 與其他第三方 SDK 時,避免因為 SDK 衝突而浪費大量時間。

讓我們開始吧。 

步驟 1:建立 Firebase 專案並註冊 iOS + Android 應用程式。

 步驟 2:設定 Firebase 專案

 設定 iOS

  •  登入 Apple Developer 網站 → Certificate, Identifiers & Profiles → Keys → 建立新的 Key 並記錄 KEY ID
  •  返回 Firebase 控制台 → 填入你的 KEY ID
  •  你會看到如下畫面
raw-image


  •  BundleID:<填入你的 Bundle ID>
  •  App Store ID:<你可以在 App Store 下載連結中找到 Store ID>
  •  TeamID:<填入開發者帳戶的 Team ID>
  •  下載 GoogleService-Info.plist 並將其複製到 Unity 專案:Assets/ 目錄下

 

設定 Android

 建立 SHA 憑證指紋

 假設你已經建立 keystore

 否則,可執行以下指令來建立 keystore:

// Format
keytool -genkey -v -keystore <keystore 路徑> -alias <別名> -keyalg RSA -keysize 2048 -validity 10000 

示例:

 keytool -genkey -v -keystore test-debug-key.keystore -alias test-debug -keyalg RSA -keysize 2048 -validity 10000


接著執行以下指令生成 SHA 指紋:

keytool -list -v -alias test-debug -keystore test-debug-key.keystore

 

  • 進入 Firebase 控制台
  •  SHA certificate fingerprints:<填入你的 SHA 指紋>
  •  App nickname:<任意自訂名稱>
  •  Package Name:<你的 Android 套件名稱>
  •  下載 google-service.json 並複製到 Unity 專案:Assets/ 目錄下
raw-image


 步驟 3:匯入 Firebase 套件到 Unity 專案

  •  下載 Unity Firebase SDK v13.4.0
  •  解壓並安裝 FirebaseAnalytics.unitypackage 與 FirebaseMessaging.unitypackage
raw-image

你會在專案中看到:Assets/ExternalDependencyManager 資料夾

raw-image

 步驟 4:設定 Unity 的 ExternalDependencyManager

 讓我們開始設定它,以確保 iOS 與 Android 都能順利安裝所有必要依賴庫。

iOS

前往 ./Assets/ExternalDependencyManager → Editor → iOS Resolver

點擊 Settings

raw-image

Cocoapods Integration:<可依專案選擇 Add Cocoapods to Xcode project 或 Xcode workspace>

raw-image

點擊 Reset to Defaults,然後按 OK

raw-image


 Android

 前往 ./Assets/ExternalDependencyManager → Android Resolver → Settings

raw-image

 點擊 Reset to Defaults → OK

raw-image

Android Resolver → 點擊 Delete Resolved Libraries 與 Force Resolve

raw-image
為什麼需要重置 ExternalDependencyManager?

如果你有兩套不同的 SDK 都使用 ExternalDependencyManager,重置為預設值能協助順利解決依賴庫衝突。

這個簡單步驟能替你省下無數排錯時間。

另外,重置後建議執行 Delete Resolved Libraries 與 Force Resolve,可確保取得最新版本的依賴庫,而非舊快取。

 

步驟 5:整合推播通知

 4.1 App 啟動時初始化 Firebase

raw-image

InitializeFirebaseMessaging

raw-image

定義從 FCM 接收 Device Token 的 callback

raw-image

定義 OnMessageReceived 與 OnTokenReceived callback

raw-image


步驟 6:測試

  •  Build iOS 與 Android 開始測試 App
  •  確認你能在裝置日誌中看到 Registration Token
  •  登入 Firebase 控制台 → Cloud Messaging → Send test message →
raw-image
  • 填入裝置日誌取得的 device token --> 按下 Test
raw-image

你將在裝置上收到測試推播通知

總結

 恭喜你已經學會如何在 Unity 中使用 Firebase 為 Android 與 iOS 設定推播通知。特別是你知道如何解決SDK相衝突的問題。

如果你覺得這篇文章對你有幫助,請按 👏 支持,或訂閱我們的電子郵件以取得最新教學。

 感謝閱讀!

原文發佈於 Game Tech Tutorial

留言
avatar-img
遊戲技術部落格與生活筆記
4會員
8內容數
分享技術文章解決問題及生活點滴。技術包括雲端技術(AWS, GCP, Azure)的實戰經驗、雲端證照考試指南、Unity遊戲開發、DevOps、SDK,手機遊戲和應用程式及網站開發。
2025/09/01
你是不是碰過這樣的痛: - 玩家明明付了錢,卻因為 token 無效或流程錯誤,伺服器根本收不到?這種「掉單」情況最崩潰,也最容易被投訴。 - 想靠客戶端驗證節省成本,結果被假收據、重放攻擊/跨帳號刷單打臉?安全風險太高,搞到頭髮都要掉光! 現在,讓我們看看究竟哪幾條坑最讓人頭疼
Thumbnail
2025/09/01
你是不是碰過這樣的痛: - 玩家明明付了錢,卻因為 token 無效或流程錯誤,伺服器根本收不到?這種「掉單」情況最崩潰,也最容易被投訴。 - 想靠客戶端驗證節省成本,結果被假收據、重放攻擊/跨帳號刷單打臉?安全風險太高,搞到頭髮都要掉光! 現在,讓我們看看究竟哪幾條坑最讓人頭疼
Thumbnail
2023/10/30
本文您將可學到用幾個簡單的步驟,就可以快速整合推送功能到Unity的iOS和Android手機遊戲中。 幫你解決常見的代碼庫相衝問題,讓您的工作產能爆增。
Thumbnail
2023/10/30
本文您將可學到用幾個簡單的步驟,就可以快速整合推送功能到Unity的iOS和Android手機遊戲中。 幫你解決常見的代碼庫相衝問題,讓您的工作產能爆增。
Thumbnail
2023/09/14
這個教程可以幫助您為Unity遊戲設置崩潰日誌服務,讓您在短短幾分鐘內獲取崩潰日誌。
Thumbnail
2023/09/14
這個教程可以幫助您為Unity遊戲設置崩潰日誌服務,讓您在短短幾分鐘內獲取崩潰日誌。
Thumbnail
看更多
你可能也想看
Thumbnail
在 vocus 與你一起探索內容、發掘靈感的路上,我們又將啟動新的冒險——vocus App 正式推出! 現在起,你可以在 iOS App Store 下載全新上架的 vocus App。 無論是在通勤路上、日常空檔,或一天結束後的放鬆時刻,都能自在沈浸在內容宇宙中。
Thumbnail
在 vocus 與你一起探索內容、發掘靈感的路上,我們又將啟動新的冒險——vocus App 正式推出! 現在起,你可以在 iOS App Store 下載全新上架的 vocus App。 無論是在通勤路上、日常空檔,或一天結束後的放鬆時刻,都能自在沈浸在內容宇宙中。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
vocus 慶祝推出 App,舉辦 2026 全站慶。推出精選內容與數位商品折扣,訂單免費與紅包抽獎、新註冊會員專屬活動、Boba Boost 贊助抽紅包,以及全站徵文,並邀請你一起來回顧過去的一年, vocus 與創作者共同留下了哪些精彩創作。
Thumbnail
在其他語言會時常使用正規表達式來幫字串進行 Filter,在遊戲製作裡面比較遇不到處理使用者的字串輸入、資料庫查詢結果的情況,但在編輯程式碼,有搜尋(Ctrl+F)、取代(Ctrl+H)需求時使用 Regex 也能提升工作效率。
Thumbnail
在其他語言會時常使用正規表達式來幫字串進行 Filter,在遊戲製作裡面比較遇不到處理使用者的字串輸入、資料庫查詢結果的情況,但在編輯程式碼,有搜尋(Ctrl+F)、取代(Ctrl+H)需求時使用 Regex 也能提升工作效率。
Thumbnail
微軟想把 VS 的一些編輯功能在 VS Code 上實作, Unity 也在幾天前推出了基於 C# Dev Kit 的插件,因為新舊版本並不相容,這邊說明兩種(OmniSharp、Roslyn Analyzers)開發環境設置。
Thumbnail
微軟想把 VS 的一些編輯功能在 VS Code 上實作, Unity 也在幾天前推出了基於 C# Dev Kit 的插件,因為新舊版本並不相容,這邊說明兩種(OmniSharp、Roslyn Analyzers)開發環境設置。
Thumbnail
深入探討一些程式碼撰寫的習慣
Thumbnail
深入探討一些程式碼撰寫的習慣
Thumbnail
紀錄如何讓簡單的 Property 在 Inspector 內顯示。
Thumbnail
紀錄如何讓簡單的 Property 在 Inspector 內顯示。
Thumbnail
每個專案開發,都是由多個工程師來完成,就算只有一個人,隨著專案增量,你便會與過去的你面對面,這時候程式碼的可讀性高低就會成為左右你開發效率的一塊石頭,這篇就來說說幾個程式碼管理的小撇步
Thumbnail
每個專案開發,都是由多個工程師來完成,就算只有一個人,隨著專案增量,你便會與過去的你面對面,這時候程式碼的可讀性高低就會成為左右你開發效率的一塊石頭,這篇就來說說幾個程式碼管理的小撇步
Thumbnail
如何使用Game CI 提供的Github Action 將建置專案自動化
Thumbnail
如何使用Game CI 提供的Github Action 將建置專案自動化
Thumbnail
UnityEvent 簡單介紹。
Thumbnail
UnityEvent 簡單介紹。
Thumbnail
前言   這篇文章將會介紹生成物件的五種多載說明和三種應用流程。 Instantiate | 生成遊戲物件   這個英文單字的中文翻譯為「實例化」,如果單純用於 GameObject 的話你可以叫他生成物件,不過 Instatiate 還有其他的功用,像是 Clone 腳本和泛型化,這個就不在我們今
Thumbnail
前言   這篇文章將會介紹生成物件的五種多載說明和三種應用流程。 Instantiate | 生成遊戲物件   這個英文單字的中文翻譯為「實例化」,如果單純用於 GameObject 的話你可以叫他生成物件,不過 Instatiate 還有其他的功用,像是 Clone 腳本和泛型化,這個就不在我們今
Thumbnail
這篇文章將會介紹 Probuder ,Unity 官方製作的關卡設計工具。 Probuder | 關卡設計的利器
Thumbnail
這篇文章將會介紹 Probuder ,Unity 官方製作的關卡設計工具。 Probuder | 關卡設計的利器
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News