はじめに
スマホで普段何気なく目にしているPush通知。
実はPush通知を利用するためにiOSもAndroidも事前準備が必要です。
テストでもPush通知の確認が必要なことがたくさんありますよね。
お客さんによってはコチラで準備をする必要があります。
そんな時に困らないように、Push通知を利用するために準備しなくてはならないものを書いてみます。
今回は、ややこしいiOS版の準備について書いてみます。
準備するもの
●Mac ※1
●Apple Developer Programの登録(有料です)
※1 Mac OS 10.15以上推奨
作成の流れ
1.CSRファイルと開発用証明書の作成
2.AppIDの作成
3.プロビジョニングプロファイルの作成
4.APNs用の証明書作成
文字で書くのは簡単ですね(´・ω・`)
では、実際に作成してみましょう。
CSRファイルと開発用証明書の作成
1.キーチェーンアクセスを起動
2.画面左上の「キーチェーンアクセス」というメニューから 「認証局に証明書を要求」を選択
3.選択すると「証明書アシスタント」というのが開きます
●メールアドレス:
ご自身のメアドを入れましょう
●通称:
デフォルトのまま。会社名とかAppleとか入れておきましょう(空欄だとエラーになるかも…)
●CAのメールアドレス:
空欄にしておいてください
●要求の処理:
ディスクに保存/鍵ペアを指定
4.続けるを押す
「鍵ペア」を指定する画面に切り替わります。
コチラはデフォルトのままでOKです。
※下記画像が恐らくデフォルトです
これで「CSRファイル」という開発用証明書を作成するために必要なファイルが作成できました。
CSRファイルって?
認証局に対して申込した本人です!というのを証明するためのファイル…とでも思ってください(´・ω・`)
さて、次の工程にいきます。
5. [Apple Developer Program](https://developer.apple.com/jp/)にログイン
6.「Certificates, Identifiers & Profiles」を選択
7.「Certificates」を選択
8.「+」ボタンを押して「Create a New Certificate」を確認する
ここまでは簡単ですね。
9.「iOS App Development」を選択して右上のContinueを押す
10.「Choose File」を押して「開発用証明書の作成で作成したCSRファイル」を参照する
11. 次画面でDownloadボタンを押して「cerファイル」を保存する
これで証明書を作れました!
ダウンロードしたファイルは、あとで使用するので大事に保管しておいてください。
AppIDの作成
ここが結構山場です(´・ω・`)
1. Apple Developer Programのホーム画面に戻る
2.「Identifiers」を選択して「+」ボタンを押す
3.「Register a New Identifier」から「AppID」を選択
4.「APP」を選択
5.「Description/Bundle ID」の指定
●Description:
アプリの名称?概要?みたいな捉え方で良いかなと。Pushtestとかアプリ名称入れておきましょう。
●Bundle ID:
とても重要です(´・ω・`)
ビルド時にも設定するモノになるので、必ず何を設定したか覚えておきましょう。
6.「Capabilities」の中から「Push Notifications」を探してチェックを入れる
※デフォルトはチェックが入っていません
これにチェックを入れることで「Push通知を使います!」と設定をしていると思ってください。
作ったあとにやることは?
「Push Notifications」にチェックがきちんと入っているか確認する。
これ超重要です。。。
私、何度か入れ忘れやらかしてます(´・ω・`)
コレやり直しになると結構めんどくさいので、必ず見直しすることをオススメします。
プロビジョニングプロファイルの作成
ここまで来たらあと一歩か二歩です:worried:
ほんとめんどくさいですよね…。
1. Apple Developer Programのホーム画面に戻る
2.「Profiles」を選択して「+」ボタンを押す
3.「Register a New Provisioning Profiles」から「iOS App Development」を選択
4.「Generate a Provisioning Profile」で「AppID」を指定する
選択する際は英語の羅列を見て判断するより、AppID作成時に指定したDescriptionを頼りに選択すると良いです。
5.「Generate a Provisioning Profile」で事前に作成しておいた”開発用証明書”を選択
6. Provisioning Profile名を任意に入力して「Generate」を押す
7. Downloadして保存しておく
これでプロビジョニングプロファイルの作成も完了!
ダウンロードしたファイルは大事にデスクトップにでも置いておきましょう。
あと一歩です。
#APNs用の証明書作成
1. Apple Developer Programのホーム画面に戻る
2.「Certificates」を選択して「+」ボタンを押す
3.「Service」の「Apple Push Notification service SSL (Sandbox)」を選択
4.「Create a New Certificate」で事前に作成した”CSRファイル”を選択
5. 次画面で「Download」を押してcerファイルをダウンロードしてデスクトップに保存
6. デスクトップのcerファイルをダブルクリック
7. キーチェーンアクセスが開く!
これが最後の工程です。
8. キーチェーンアクセスに追加されていることを確認して該当のファイルを右クリック
9. 「~~~~を書き出す」を選択
10.「証明書」の名前を任意に入力して、ファイルの保存先を選択して「保存」を押す
※フォーマットは変更しないでください
11. 次に証明書のパスワードを設定する画面が出るので任意に設定
「補足」
ここでパスワードを設定するとアプリのビルド時にパスワードが必要になります。
パスワード無しでも良い場合は空欄のまま進めてください。
12. システムからパスワードの入力要求があるので対応
これは現在Macにログオンしているユーザーのパスワードを入れてください。
証明書とは一切関係無いパスワードになります。
13. 指定の場所に保存された「p12ファイル」を確認
これでビルドする時に必要な「p12ファイルとプロビジョニングプロファイル」の作成が完了しました!
最後に作成したp12ファイルと、途中でダウンロードしたプロビジョニングプロファイルを使用して
アプリをビルドしてみてください。
きっとPush通知が飛んでくると…思います(´・ω・`)
以上がiOSのPush通知用証明書とプロビジョニングプロファイルの作成方法になります!
さいごに
Push通知が飛んでこない…
ビルドに失敗する…
こんなことがよく発生します。
●Push Notificationsにチェックが入っているか再確認
これ…ホントによくやります。
事前に確認しましょう!
●作った順番を間違えている
記事の順番通りに作成するのが基本です。
元から証明書など作成しているのであればSKIP出来ますが
最初のうちは全て新規に作成することをオススメします。
●ビルド時にエラーになる
Xcodeに表示されたエラー内容にもよりますが、
やっぱり「Push Notifications」のチェック入れ忘れが多いです。
証明書とプロビジョニングプロファイルが紐づいてないといったエラーも考えられますので、
ビルドした人にどんなエラーが出たのか確認しましょう。
他にも原因は考えられますが、大体は上記の3つが多いです。
あと最後になりますが、、、コレが一番重要かもしれませんw
作り方とか画面とかが勝手に変わる可能性があります(Appleの気まぐれですw)
大きく文言とかは変わらないと思うので、きちんと自分が作っているものを理解して対応しましょう!