LCL Engineers' Blog

バス比較なび・格安移動・バスとりっぷを運営する LCLの開発者ブログ

fastlane pemで、iOSのPush通知用証明書を自動生成する

各所で言われてますが、iOSのPush通知用証明書は作成手順が複雑です。

今回は、証明書を自動作成してくれる「fastlane pem」を紹介します。

pemがあれば、複雑な手順を全く覚える必要がなくなるので、非常に楽になります。

github.com

事前準備

App IDは事前に作成していること

インストール

sudo gem install pem -n /usr/local/bin/

証明書の生成

以下のコマンドを実行するだけです。

pem -a [app_identifier] -u [ Apple ID]

fastlane導入済みのプロジェクトのディレクトリで実行する場合は、pemだけでOKです。

pem

実行したディレクトリに証明書が作成されるので、Push配信サーバやサービスに必要な証明書をUPすれば完了です。

pem
・・・
・・・
[15:20:44]: Creating a new push certificate for app 'xzxxxxxxxxxxxxxx
[15:20:47]: Private key: /private/tmp/production_xzxxxxxxxxxxxxxx.pkey
[15:20:47]: p12 certificate: /private/tmp/production_xzxxxxxxxxxxxxxx.p12
[15:20:47]: PEM: /private/tmp/production_xzxxxxxxxxxxxxxx.pem

一応、Dev Centerを確認すると、問題なく証明書が作成されています。

f:id:lcl-engineer:20160529235547p:plain

App IDにも紐付けられていますね。

f:id:lcl-engineer:20160529235709p:plain

この辺の手順を意識する必要がなくなるのは嬉しいですね。

その他オプション

開発用証明書を作成する場合は、developmentを付与します。

pem --development

デフォルトでは、既存の証明書の有効期間が30日以上がある場合は再生成しない。 強制的に再生成する場合は、forceを付与する。

pem --force

他にもオプションはありますが、よく利用するのはこれらぐらいだと思います。