プッシュ通知またはFCM (Firebase Cloud Messaging) を使用するためには、証明書やAPI KeyをTapjoyのダッシュボードにアップロードする必要があります。iOSとAndroidではそれぞれ別の設定が必要になります。このページでは必要な証明書の作成方法とアップロード方法を説明します。
こちらの Apple の開発用ドキュメントの手順に従って アプリ の プッシュ通知 を有効にし、通知用証明書を生成してください。
「TLS証明書を使用してAPNsとやり取りする」の章全体を行ってください。これは、サブ項目の「プッシュ通知を有効にする」「APNsクライアントTLS証明書を生成する」「クライアントTLS IDをMacからエクスポートする」 等も含みます。
「クライアントTLS IDをMacからエクスポートする」 節で、Keychain から証明書をエクスポートする手順があります。この時、証明書を .p12 フォーマットで書き出します (書き出したファイルを certificate.p12 とします)。 このファイルに対し、次の二つのコマンドを実行します。二つ目のコマンドでエクスポート用パスワードを求められますが、空白のままにしておきます。
<pre class="prettyprint">openssl pkcs12 -in certificate.p12 -nodes -out temp.pem
<pre class="prettyprint">openssl pkcs12 -export -in temp.pem -out cert_unprotected.p12
ここで作成したパスワードなしの cert_unprotected.p12 ファイルがダッシュボードに登録可能な証明書になります。
ユニバーサルプッシュ通知を使用しない場合は、商用ビルド、開発ビルド用それぞれのプッシュ証明書を作成する必要があります。 [Apple Developer Site > Certificates, Identifiers & Profiles > iOS Apps > Identifiers > App IDs > Application]で[Production SSL Certificate]を作成します。
aps_production.cerを管理画面に登録するためには.pemファイルに変換する必要があります。
コマンドラインを使用して .p12ファイルから証明書のみ aps_production_cert.pemファイル(ファイル名は任意)に書き出します。:
openssl pkcs12 -clcerts -nokeys -out aps_production_cert.pem -in aps_production_cert.p12
openssl pkcs12 -nocerts -nodes -out aps_production_key.pem -in aps_production_key.p12
openssl rsa -in aps_production_key.pem -out aps_production_key_noenc.pem
cat aps_production_cert.pem aps_production_key_noenc.pem > apn_production.pem
作成したaps_production.pemがアップロード用証明書になります。開発用のプッシュ証明書も同様に作成します。
作成したアップロード用証明書を、Tapjoy ダッシュボードの 設定 > アプリ設定 > プッシュ証明書 からアップロードします。
FCM を使用するためには、Firebase Console から Server Key を取得する必要があります。プロジェクトでFCMを設定していない場合は、FCM ドキュメント に従い設定して下さい。
FCM サービスを有効にするには以下の手順を行います:
Tapjoy.setGcmSender("ID")
で設定する値です。