教學課程:設定 iOS 應用程式以使用 Azure 通知中樞
本教學課程說明如何設定 Azure 通知中樞,並設定認證,以透過 Apple 推播通知服務 (APNS) 將通知推播至 iOS 裝置。
執行本教學課程是後續 Objective C 和 Swift iOS 教學課程的必要條件,並涵蓋下列步驟:
- 產生憑證簽署要求檔案。
- 要求您的應用程式以取得推播通知。
- 建立應用程式的布建配置檔。
- 建立通知中樞。
- 使用APNS資訊設定通知中樞。
必要條件
若要完成此教學課程,您必須具備有效的 Azure 帳戶。 如果您沒有帳戶,只需要幾分鐘的時間就可以建立免費試用帳戶。 如需詳細資料,請參閱 Azure 免費試用。
您也需要下列項目:
- 作用中的 Apple開發人員 帳戶。
- 執行 Xcode 的 Mac,以及安裝在您 Keychain 中的有效開發人員憑證。
- 執行 iOS 10 版或更新版本的 iPhone 或 iPad。
- 您在Apple入口網站中註冊並與您的憑證相關聯的實體裝置。
如果您不熟悉服務,請務必閱讀 Azure 通知中樞概觀 。
注意
通知中樞將設定為僅使用沙箱驗證模式。 您不應該將此驗證模式用於生產工作負載。
產生憑證簽署要求檔案
Apple Push Notification Service (APNS) 會使用憑證來驗證您的推播通知。 請遵循這些指示來建立必要的推播憑證來傳送和接收通知。 如需這些概念的詳細資訊,請參閱 官方Apple推播通知服務 檔。
產生憑證簽署要求 (CSR) 檔案,Apple 用來產生已簽署的推播憑證:
在您的 Mac 上,執行 Keychain 存取工具。 您可以從 [公用程式] 資料夾或 Launchpad 上的 [其他] 資料夾開啟它。
選取 [金鑰鏈存取],展開 [憑證助理],然後選取 [向證書頒發機構單位要求憑證]。
注意
根據預設,Keychain Access 會選取清單中的第一個專案。 如果您位於 [憑證] 類別,且 Apple Worldwide Developer Relations 證書頒發機構單位不是清單中的第一個專案,則這可能會是個問題。 在產生 CSR(憑證簽署要求)之前,請確定您有非密鑰專案,或 已選取 Apple 全球開發人員關係證書頒發機構單位 金鑰。
選取您的 [使用者電子郵件位址],輸入您的 [一般名稱] 值,確定您指定 [ 儲存到磁碟],然後選取 [ 繼續]。 將 CA 電子郵件位址保留空白,因為不需要。
在 [另存新檔] 中輸入 CSR 檔案的名稱,選取 [位置] 中的位置,然後選取 [儲存]。
此動作會將 CSR 檔案儲存在選取的位置。 默認位置為 Desktop。 請記住為檔案選擇的位置。
接下來,向Apple註冊您的應用程式、啟用推播通知,並上傳導出的 CSR 以建立推播憑證。
註冊應用程式以便使用推播通知
若要將推播通知傳送至 iOS 應用程式,請向 Apple 註冊您的應用程式,並註冊推播通知。
如果您尚未註冊應用程式,請流覽至 Apple 開發人員中心的 iOS 佈建入口網站 。 使用您的 Apple ID 登入入口網站,然後選取 [ 標識符]。 然後選取 + 以註冊新的應用程式。
在 [ 註冊新的標識符 ] 畫面上,選取 [ 應用程式標識符 ] 單選按鈕。 然後選取 [繼續]。
更新新應用程式的下列三個值,然後選取 [ 繼續]:
描述:輸入應用程式的描述性名稱。
套件組合標識碼:輸入組織標識符.產品名稱的套件組合標識碼,如應用程式散發指南中所述。 [組織標識符] 和 [產品名稱] 值必須符合您在建立 Xcode 專案時所使用的組織識別碼和產品名稱。 在下列螢幕快照中 ,NotificationHubs 值會當做組織標識碼使用,而 GetStarted 值會當做產品名稱使用。 請確定套件 組合識別碼 值符合 Xcode 專案中的值,讓 Xcode 使用正確的發佈配置檔。
推播通知:檢查 [功能] 區段中的 [推播通知] 選項。
此動作會產生您的應用程式識別碼和您確認資訊的要求。 選取 [ 繼續],然後選取 [ 註冊 ] 以確認新的應用程式標識符。
選取 [ 註冊] 之後,您會在 [憑證、標識符和配置檔 ] 頁面上看到新的應用程式識別碼作為明細專案。
在 [憑證]、[標識符和配置檔] 頁面的 [標識符] 下,找出您剛才建立的應用程式標識碼明細專案,然後選取其數據列以顯示 [編輯您的應用程式標識符組態] 畫面。
建立通知中樞的憑證
注意
使用 iOS 13 版本,您只能使用令牌型驗證來接收無訊息通知。 如果您使用憑證式驗證進行APNS認證,則必須切換至使用 令牌型驗證。
需要憑證,才能讓通知中樞使用 APNS。 完成此步驟的方式有兩種:
建立 可直接上傳至通知中樞的 .p12 檔案。
建立可用於令牌型驗證的 .p8 檔案(較新的方法)。
相較於使用憑證,第二個選項有一些優點,如APNS的令牌型 (HTTP/2) 驗證中所述。 不過,這兩種方法都會提供步驟。
選項 1:建立可直接上傳至通知中樞的 .p12 推播憑證
向下卷動至核取的 [推播通知 ] 選項,然後選取 [ 設定 ] 以建立憑證。
[ Apple 推播通知服務 SSL 憑證 ] 視窗隨即出現。 選取 [開發 SSL 憑證] 區段中的 [建立憑證] 按鈕。
[ 建立新的憑證 ] 畫面隨即顯示。
注意
本教學課程使用開發憑證。 註冊生產憑證時會使用相同的程式。 請確定您在傳送通知時使用相同的憑證類型。
選取 [ 選擇檔案],流覽至您從第一個工作儲存 CSR 檔案的位置,然後按兩下憑證名稱以載入它。 然後選取 [繼續]。
在入口網站建立憑證之後,選取 [ 下載] 按鈕。 儲存憑證,並記住儲存憑證的位置。
憑證會下載並儲存在 [ 下載] 資料夾中:
根據預設,下載的開發憑證會命名 為 aps_development.cer。
按兩下下載的推播憑證 aps_development.cer。 此動作會在 Keychain 中安裝新的憑證。
在 [金鑰鏈存取] 中,以滑鼠右鍵按下您在 [憑證] 類別中建立的新推播憑證。 依序選取 [匯出]、命名檔案、選取 .p12 格式,然後選取 [ 儲存]。
您可以選擇使用密碼保護憑證,但這是選擇性的。 如果您想要略過密碼建立,請按兩下 [ 確定 ]。 記下匯出之 .p12 憑證的檔名和位置。 它們可用來啟用APNS的驗證。
注意
您的 .p12 檔名和位置可能與本教學課程中所描繪的內容不同。
選項 2:建立可用於令牌型驗證的 .p8 憑證
記下下列詳細資料:
- 應用程式識別碼前置詞 (這是 小組識別碼)
- 套件組合標識碼
回到 [ 憑證]、[標識符和配置檔] 中,按兩下 [ 金鑰]。 如果您已經有針對APNS設定的金鑰,則可以在建立 .p8 憑證之後重新使用您下載的 .p8 憑證。 如果是,您可以忽略步驟 3 到 5。
按兩下按鈕(或[+建立金鑰] 按鈕來建立新的金鑰。
提供適當的 [金鑰名稱] 值、核取 [Apple Push Notifications 服務 ][APNS] 選項,然後按兩下 [繼續],然後在下一個畫面上單擊 [註冊]。
按兩下 [下載],然後將 .p8 檔案 (前面加上
AuthKey_
) 移至安全的本機目錄,然後按兩下 [完成]。重要
請務必將 .p8 檔案保留在安全的地方(並儲存備份)。 下載金鑰之後,就無法重新下載金鑰;伺服器複本已移除。
在 [金鑰] 上,按下您剛才建立的金鑰(或如果您選擇改用現有的金鑰)。
記下 [ 金鑰識別碼 ] 值。
在您選擇的適當應用程式中開啟 .p8 憑證,例如 Visual Studio Code,然後記下密鑰值。 這是 -----BEGIN PRIVATE KEY----- 和 -----END PRIVATE KEY 之間的值----- 。
-----BEGIN PRIVATE KEY----- <key_value> -----END PRIVATE KEY-----
這是稍後將用來設定通知中樞的令牌值。
在這些步驟結束時,您應該有下列資訊,以供稍後使用APNS資訊設定通知中樞:
- 小組識別碼 (請參閱步驟 1)
- 套件組合識別碼 (請參閱步驟 1)
- 金鑰識別碼 (請參閱步驟 7)
- 權杖值 (.p8 金鑰值,請參閱步驟 8)
建立布建配置檔
返回 iOS 佈建入口網站,選取 [憑證]、[標識符和配置檔],從左側功能表中選取 [配置檔],然後選取+以建立新的配置檔。 [ 註冊新的布建配置檔 ] 畫面隨即出現。
選取 [開發] 下的 [iOS 應用程式開發] 作為布建配置檔類型,然後選取 [繼續]。
接下來,從 [應用程式 標識符] 下拉式清單中選取您建立的應用程式識別碼,然後選取 [ 繼續]。
在 [ 選取憑證] 視窗中,選取用於程式代碼簽署的開發憑證,然後選取 [ 繼續]。 此憑證不是您所建立的推送憑證。 如果不存在,您必須建立它。 如果憑證存在,請跳至下一個步驟。 如果開發憑證不存在,若要建立開發憑證:
- 如果您看到 [沒有可用的憑證],請選取 [ 建立憑證]。
- 在 [軟體] 區段中,選取 [Apple Development]。 然後選取 [繼續]。
- 在 [ 建立新的憑證 ] 畫面中,選取 [ 選擇檔案]。
- 流覽至您稍早建立的 憑證簽署要求 憑證,加以選取,然後選取 [ 開啟]。
- 選取 [繼續]。
- 下載開發憑證,並記住其儲存位置。
返回 [憑證]、[標識符和配置檔] 頁面,從左側功能表中選取 [配置檔],然後選取+以建立新的配置檔。 [ 註冊新的布建配置檔 ] 畫面隨即出現。
在 [ 選取憑證] 視窗中,選取您剛才建立的開發憑證。 然後選取 [繼續]。
接下來,選取要用於測試的裝置,然後選取 [ 繼續]。
最後,在 [布建配置檔名稱] 中選擇設定檔的名稱,然後選取 [產生]。
建立新的布建配置檔時,選取 [ 下載]。 請記住儲存位置。
流覽至布建配置檔的位置,然後按兩下它,將它安裝在 Xcode 開發電腦上。
建立通知中樞
在本節中,您會使用 .p12 推播憑證或令牌型驗證來建立通知中樞,並使用 APNS 設定驗證。 如果您想要使用已建立的通知中樞,您可以跳至步驟 5。
登入 Azure 入口網站。
選取左側功能表上的 [所有服務],然後在 [行動裝置] 區段中選取 [通知中樞]。 選取服務名稱旁邊的星號圖示,將服務加到左功能表上的 [我的最愛] 區段。 將通知中樞新增至 [我的最愛] 之後,請選取它。
在 [通知中 樞] 頁面上,選取 工具欄上的 [新增 ]。
在 [通知中 樞] 頁面上,執行下列步驟:
- 在通知中樞輸入名稱。
- 在 [建立新命名空間] 中輸入名稱。 命名空間包含一或多個通知中樞。
- 從 [ 位置 ] 下拉式清單中選取值。 這個值會指定您要在其中建立通知中樞的位置。
- 在資源群組中選取現有的資源群組,或建立新的資源群組。
- 選取 建立。
選取 [通知 ] (鈴鐺圖示),然後選取 [移至資源]。 您也可以在 [通知中 樞 ] 頁面上重新整理清單,然後選取您的中樞。
從清單中選取 [ 存取原則 ]。 請注意,這兩個 連接字串 可供您使用。 您稍後需要他們來處理推播通知。
重要
請勿在應用程式中使用 DefaultFullSharedAccessSignature 原則。 這僅供後端使用。
使用APNS資訊設定通知中樞
在 [通知服務] 底下,選取 [Apple][APNS],然後根據您先前在 [建立通知中樞憑證] 區段中所選擇的方法,遵循適當的步驟。
注意
只有在您想要將推播通知傳送給從市集購買應用程式的使用者時,才使用生產模式。
選項 1:使用 .p12 推播憑證
選取 [憑證] 。
選取檔案圖示。
選取您稍早導出的 .p12 檔案,然後選取 [ 開啟]。
如有需要,請指定正確的密碼。
選取 [沙箱] 模式。
選取儲存。
選項 2:使用令牌型驗證
選取 [令牌]。
輸入您稍早取得的下列值:
- 金鑰識別碼
- 套件組合標識碼
- 小組標識碼
- 權杖
選擇 沙箱
選取儲存。
您現在已使用APNS設定通知中樞。 您也有註冊應用程式並傳送推播通知所需的 連接字串。
下一步
在本教學課程中,您已在 Azure 中建立並設定通知中樞,並將其設定為允許透過 Apple Push Notification Service (APNS) 將通知傳送至您的應用程式。 接下來,我們將建立範例 iOS 應用程式,並整合 Azure 通知中樞 SDK,以便接收透過 Azure 入口網站 傳送的推播通知。 根據您的選擇語言前進到下列教學課程: