iPhoneのプッシュ通知(APNS)の証明書の作り方

Objective-Cでプッシュ通知をするためには、Appleへの接続に証明書が必要ですが、その証明書の作成手順は結構大変なので、一つ一つスクリーンショットと一緒に追っていきます。

証明書の要求ファイルを作成

まずはCSRという証明書への署名要求のファイルを作成します。これをAppleに送って、実際の証明書をもらいます。
「アプリケーション」→「ユーティリティ」→「キーチェーンアクセス」を起動して、メニューバーから「認証局に証明書を要求」を開きます。
スクリーンショット 2013-08-19 23.29.29
入力欄を埋めていきます。「CAのメールアドレス」は空のままにして、「ディスクに保存」をします。
スクリーンショット 2013-08-19 23.30.14
名前はなんでもよいので、そのまま「CertificateSigningRequest.certSigningRequest」で保存します。このファイルをAppleに送信して、実際の証明書を獲得します。
スクリーンショット 2013-08-19 23.31.04

Developer Centerで証明書を作成

Apple Developer Centerにログインします。
スクリーンショット 2013-08-19 23.32.06
ログインできました。iOS Appsの「Certificates」を選択して証明書画面へ行きます。
スクリーンショット 2013-08-19 23.32.50
Add – iOS Certificates – Apple Developer
証明書画面の右上の「+」マークを押すと、証明書の追加が行えます。
この中から「Apple Push Notification service SSL (Production)」を選択します。デバッグビルドの端末にプッシュ通知を送りたいという場合は、「Apple Push Notification service SSL (Sandbox)」を選択します。
スクリーンショット 2013-08-19 23.33.47
どのApp IDを使うか聞かれますので、これからプッシュ通知を送りたいアプリのApp IDを選択します。複数のアプリにプッシュ通知を送りたい場合は、そのつど証明書を作成する必要があります。
スクリーンショット 2013-08-19 23.39.44
App IDを選択すると、ファイルアップロードのフォームが現れます。ここでお待ちかねの、先ほど作成した「CertificateSigningRequest.certSigningRequest」をアップロードします。
スクリーンショット 2013-08-19 23.40.28
証明書が作られて、「Download」ボタンが出ますので、ダウンロードします。これで証明書が完成です!
スクリーンショット 2013-08-19 23.41.12

p12ファイルを書き出す

最後に、完成した証明書を実際に使うために、p12ファイルの形式で書き出します。先ほどダウンロードしたファイルをダブルクリックすると、キーチェーンアクセスが起動し、追加されます。
スクリーンショット 2013-08-19 23.43.15
追加されたファイルを選択し、右クリックから「書き出す」を選択します。
スクリーンショット 2013-08-19 23.43.25
保存先の選択画面が出ますので、そのまま保存します。名前は初期の「証明書.p12」のまま保存しましたが、名前を変えても構いません。
スクリーンショット 2013-08-19 23.43.44
パスワードをかける必要があれば、パスワードを入力します。ライブラリなどによってパスワードがかかっていると使用できない場合があるので、パスワードを入力しない場合が多いです。
スクリーンショット 2013-08-19 23.43.48

pemに書き出す

php-apnsなどライブラリによっては、p12の形式では使えず、pemなどの形式に変換する工程が必要な場合があります。次のようなopensslコマンドで変換します。

openssl pkcs12 -in certificate.p12 -clcerts -nokeys -out certificate.pem

おわりに

例によって最後にPRですが、サーバをもたなくても簡単にプッシュ通知が配信できて、しかも通知内容のA/Bテストできたりして、無料で今すぐ始められるサービスがあります。
スクリーンショット 2013-08-13 20.18.51
GrowthPush
プッシュ通知の実装をする前に、いちど試してみてください!

タイトルとURLをコピーしました