2016/09/28作成(2019/10/15更新)
アプリにプッシュ通知を組み込む際、必要な証明書の作り方を解説します。
- Apple Developer Program アカウント(有料)が必要です
https://developer.apple.com/account/ - Mac と以下の環境が必要です
- 秘密鍵書き出しのため、 キーチェーンアクセス を利用します
- 端末のUDID確認のため、iTunes または Xcode を使用します
- 下図の内容を①〜⑦の順番でそれぞれ作成していきます
- 【Monaca利用時のみ】:上記に加え、キーチェーンアクセスにて②開発用証明書(.cer)に紐付く「⑧開発用証明書(.p12)」を書き出す必要があります
- 作成したファイルはダウンロードし、同じフォルダにまとめておきましょう
- デスクトップなどにフォルダを用意すると便利です
- 作業は少し複雑です。 作り方を誤るとプッシュ通知が動作しない可能性があります ので、1つ1つ丁寧に作業していきましょう!
- CSRファイルを作成します ※初回利用時のみ
- 既にある場合は作成不要です
- 「キーチェーンアクセス」を開いて、メニューバーの「キーチェーンアクセス」>「証明書アシスタント」>をクリックします
- 「鍵ペア情報」を確認して「続ける」をクリックすると、「設定結果」が出るので「完了」をクリックします
- 保存場所を選択して「保存」をクリックします
左メニューのCertificatesを開き、Certificatesの隣にある+ボタンをクリックすると、 Create a New Certificateの画面が開きます。
証明書の作成画面が表示されるので、下の方にあるServicesの項目にある必要なAPNs証明書を選択してください。
- iOS Apple Push Notification service SSL (Sandbox):開発用のプッシュ通知証明書
- Apple Push Notification service SSL (Sandbox & Production):本番用のプッシュ通知証明書
なお、リリースされるアプリ(本番用アプリ)に対して開発用証明書を設定した場合、invalidTokenが発生してしまいますのでご注意ください。 ※invalidTokenについてはこちら
- 開発用:Apple Push Notification service SSL (Sandbox) を選択
- 本番用:Apple Push Notification service SSL (Sandbox & Production) を選択
- 本来は開発用と本番用を兼ねた証明書ですが、ニフクラ mobile backendに設定する場合は本番用として設定してください。
どのアプリに紐づいた証明書を作成するのか選択する必要があります。 下のプルダウンメニューにAppleに登録されたアプリの一覧が表示されるので、 証明書を作成するアプリを選択してください。
次の画面では、CSRファイルを選択する必要がありますので、CSRファイルについて説明して行きます。
CSRファイルは、開発者証明書を登録する際に既に作成済みの場合、再度作成する必要がありません。 まだ作成されていない場合、以下の手順でキーチェーンアクセスから作成します。 キーチェーンアクセスのメニューから証明書アシスタント>認証局に証明書を要求...を選択します。
メールアドレスと通称を設定し、ディスクに保存を選択して、続けるボタンをクリックします。 CSRファイルの保存場所を決めて、保存してください。
証明書作成画面に戻り、CSRファイルをアップロードしてください。
- AppID を作成します
- 「Identifiers」>「App IDs」>右上の「+」をクリックします
- 動作確認で使用する端末の登録をします
- 既に登録済みの場合、この作業は不要です
- 「Devices」>「All」>右上の「+」をクリックします
- UDIDは下記のいずれかの方法で調べることができます
- 先ほどの入力欄に調べたUDIDをコピーして貼り付け、「Continue」をクリックします
- プロビジョニングプロファイルを作成します
- 「Provisioning Profiles」>「All」>右上の「+」をクリックします
- APNs用証明書(.cer)を作成します
- ここで「CSRファイル」が必要となります。①「CSRファイル」が手元にない場合は、改めて「CSRファイル」を作成し、準備してください。(作成手順は、『①「CSRファイル」の作成』を参照)
- 「Certificates」>「All」>右上の「+」をクリックします
- CSRファイルは①開発用証明書(.cer)作成時と同じものを使用します
-
APNs用証明書(.p12)を書き出します
-
キーチェーンアクセスを開きます
-
⑥で作成した「APNs用証明書(.cer)」をダブルクリックしてキーチェーンアクセスを開きます
-
三角のアイコンをクリックして、開きます
- 重要:下図の作業を誤るとプッシュ通知を正しく配信することができなくなりますので注意して書き出してください
- 開発用証明書(.p12)を書き出します
- キーチェーンアクセスを開きます
- ②で作成した「開発用証明書(.cer)」をダブルクリックしてキーチェーンアクセスを開きます
- 証明書を開かずに(三角のアイコンをクリックしないで)開発用証明書で右クリックをして書き出します
- 作成したものの中で、以下の3点を使用します
- ②開発用証明書(.cer)
- Monaca利用時は、⑧開発用証明書(.p12)
- ③AppID
- ⑤プロビジョニングプロファイル
- ⑦APNs用証明書(.p12)
- ②開発用証明書(.cer)
- Swift3(iOS10以上)用プッシュ通知サンプル
https://github.com/NIFTYCloud-mbaas/Swift3PushApp - Swift2(iOS8,9)用プッシュ通知サンプル
https://github.com/NIFTYCloud-mbaas/SwiftPushApp - ObjectiveC(iOS10以上)用プッシュ通知サンプル
https://github.com/NIFTYCloud-mbaas/ObjcPushApp_ios10 - ObjectiveC(iOS8,9)用プッシュ通知サンプル
https://github.com/NIFTYCloud-mbaas/ObjcPushApp - Monacaプッシュ通知サンプル
https://github.com/NIFTYCloud-mbaas/MonacaPushApp - Unityプッシュ通知サンプル
https://github.com/NIFTYCloud-mbaas/unity_push_quickstart