iT邦幫忙

2021 iThome 鐵人賽

DAY 23
0
Mobile Development

轉職App開發打怪雜記系列 第 23

Firebase推播(上) - 文字推播

緣由:

推播可是App最特殊的功能之一了,我剛學App程式的時候,最好奇最想學的就是推播的功能了,概念我們大概講一下,
推播分為本地推播和遠程推播,本地推播滿容易的,也可以在模擬器上測試,
但遠程推播就比較麻煩一點了,需要開發者帳號、需要真機測試,以下講解皆為遠程推播~
遠程推播主要的工具有推播平台、ios 裝置、APP、APNs憑證
推播平台,在推播的角色上屬於Provider,有些教學會說去下載應用程式來測試,例如APN Tester、Easy APNs Provider等等,但我最常用的就是Firebase(也會以此為主作說明)
iOS裝置,因為遠程推播需要以真機測試,且接收推播訊息的APP要記得打開隱私設定的推播允許
APP,需在APP設定中的Signing & Capabilities下加上”Push Notifications”啟用推播功能
APNs憑證,這個憑證的存在是為了確保 iOS 裝置與伺服器之間的通訊安全,沒有這個憑證是沒辦法收到推播訊息的(嗯...對的 要有付費的開發者帳號才能產出憑證

下面會以firebase作為推播平台來說明,Firebase官方也有完整的客戶端設置文(https://firebase.google.com/docs/cloud-messaging/ios/client?authuser=2),
淺顯易懂,大家可以試試或是參考下面的圖文,若有疏漏請指教更正

實作:

XCode端設置

啟用推播功能
https://ithelp.ithome.com.tw/upload/images/20210923/20130757hDqwxGqAuk.png
將Firebase推播專案註冊完產出的GoogleService-Info.plist放進專案中
https://ithelp.ithome.com.tw/upload/images/20210923/20130757Yspel0mJDY.png

開發者帳號後臺Apple Push Notification Service (APNS) 憑證設定(以P8憑證為例)

https://ithelp.ithome.com.tw/upload/images/20210923/20130757dYZCMsPxgN.png
https://ithelp.ithome.com.tw/upload/images/20210923/20130757TulmwEmpJH.png
https://ithelp.ithome.com.tw/upload/images/20210923/201307574e1gga4KIf.png

After downloading your key, it cannot be re-downloaded as the server copy is removed。
此憑證只能下載一次,若遺失只能再申請一個新的

Firebase端設置

創建專案
首先,登入google帳號後,創建一個專案,步驟如下:

1.新增專案
https://ithelp.ithome.com.tw/upload/images/20210923/20130757T8XYCUI4DD.jpg

2.建立專案,專案名稱不重複
https://ithelp.ithome.com.tw/upload/images/20210923/20130757eHO4UgYDZc.jpg

3.此專案啟用預設的分析功能
https://ithelp.ithome.com.tw/upload/images/20210923/20130757AouYduR8bx.jpg

4.建立此專案的分析帳戶
https://ithelp.ithome.com.tw/upload/images/20210923/20130757Sc4x06DyJf.jpg

Firebase專案之APP連結設置
建立專案到目前為止已告一段落,接著是針對推播專案的基本設定:

1.選擇推播裝置
https://ithelp.ithome.com.tw/upload/images/20210923/20130757TnGPavbviz.jpg

2.設定APP ID(以iOS為例)
https://ithelp.ithome.com.tw/upload/images/20210923/20130757wg6zmnAHB2.jpg

3.下載Google服務的plist檔匯入Xcode專案
https://ithelp.ithome.com.tw/upload/images/20210923/20130757AMJvIRhkeH.jpg

4.在Xcode專案中引入Firebase的第三方套件(需先安裝Cocoapods)
https://ithelp.ithome.com.tw/upload/images/20210923/20130757RbAIHoxss1.jpg

5.添加初始化代碼至Xcode專案裡
https://ithelp.ithome.com.tw/upload/images/20210923/20130757ka10WPDYOm.jpg

6.設定完成回到主控台,接著到APPLE 開發者帳號後臺申請P8或P12憑證,添加到Firebase指定專案的”專案設定”>”雲端通訊”中
https://ithelp.ithome.com.tw/upload/images/20210923/20130757wVec78X4c9.png
https://ithelp.ithome.com.tw/upload/images/20210923/20130757Zyn691YbDX.png
https://ithelp.ithome.com.tw/upload/images/20210923/20130757Q4hppBmUCL.png

FCM推播內容設定
接著可以開始設定推播內容
1.主控台的側邊欄的”雲端通訊”
https://ithelp.ithome.com.tw/upload/images/20210923/2013075791oSclhVLB.jpg

2.點擊”新增通知”
https://ithelp.ithome.com.tw/upload/images/20210923/20130757FfolpZ1kxG.jpg

3.輸入要推播的內容
https://ithelp.ithome.com.tw/upload/images/20210923/201307578XiCd7uEal.png

4.設定要推播的對象(App id、版號)
https://ithelp.ithome.com.tw/upload/images/20210923/20130757WJCrD064oe.png

5.設定要推播的時間
https://ithelp.ithome.com.tw/upload/images/20210923/20130757p30Cd6wxL0.png
下方的進階選項可以自由選填,設定完畢就可以點擊”審查”,等候推播。

文字推播示意圖
https://ithelp.ithome.com.tw/upload/images/20210923/20130757T7zbPyomKj.png
https://ithelp.ithome.com.tw/upload/images/20210923/20130757EIOhnJkONB.png


上一篇
Webview問題集(下)-常用功能
下一篇
Firebase推播(下) - 圖片推播
系列文
轉職App開發打怪雜記30

尚未有邦友留言

立即登入留言