いんでぃーづ

ゲームいろいろ、いろいろ自由

Unity+Firebaseで簡単・無料のiOSプッシュ通知 〜 (3)XCodeの設定

    
            
  • 1
  •         
  • 2
  •         
  • 3
  •     

Xcodeプロジェクト

最後に、書き出したXcodeプロジェクトの設定です。

PushNotificationを受け取るには、プロビジョニングプロファイルをMemberCenterからダウンロードする必要があります。

記事の上のほうでAPNs用の証明書を作成しましたが、次はiOSアプリビルド用の証明書を作ります。

MemberCenterで開発用デバイスを登録

開発用に使用する端末を登録します。

MemberCenterの左メニューの「Devices」の 「All」をクリック。右上の+ボタンをクリック。

次の画面に進みます。

f:id:sugar_affordance:20170120202730p:plain

Nameには好きな名前を入れます。

UDIDというのはiOSバイスごとに設定されている一意なIDです。

調べる方法ですが、iPhoneMacに接続した状態で、 Xcodeのメニューから

Window > Devices

を選択します。

f:id:sugar_affordance:20170120202928p:plain

でてくる画面の赤枠のIdentifier欄に書いて有る文字列がUDIDです。

f:id:sugar_affordance:20170120203025p:plain

開発用証明書を作る

APNsの証明書を作ったときと同じ手順です。

種類はiOS App Developmentを選択しましょう。

f:id:sugar_affordance:20170120203115p:plain

メンバー、使用デバイス、等を適宜選択し、証明書をダウンロード。
ダブルクリックしてキーチェーンに登録します。

ProvisioningProfileの作成

プロビジョニングプロファイルとは、iPhone実機へのインストールや、本番アプリのAppStoreへのアップロードなどに使用するファイルです。

MemberCenterの左メニューからProvisioningProfileAllをクリックし、右上の+ボタンをクリック。

iOS App Development」を選択し、適宜チェックを入れながら進んでいくと、ファイルをダウンロードできます。

ダウンロードしたファイルをダブルクリックしてXcodeにインポートしましょう。

プロジェクトの設定

XcodeCapabilitiesを表示し、PushNotificationsがONになっていることを確認。

f:id:sugar_affordance:20170120203154p:plain

下にスクロールし、Background Modes をONにして Remote notifications にチェック。

f:id:sugar_affordance:20170120203210p:plain

これで全ての準備が終わりです! 長かった。

実機をつなげてアプリを起動しましょう。

さきほどのソースでXcodeデバッグ実行すると、コンソールにトークンが表示されるのでメモっておきます。

f:id:sugar_affordance:20170121085125p:plain

Firebaseで通知を投げる

FirebaseコンソールのメニューからNotificationsを選択します。

f:id:sugar_affordance:20170120203249p:plain

「新しいメッセージ」から通知を投げられます。

特定の端末にだけ投げたい場合、FirebaseMessaging.TokenReceivedで取得したトークンを使います。


最後までこれた人はわかると思いますが、MemberCenterのやりとりが一番複雑で時間がかかります

あと決して「簡単」ではないですね。タイトル詐欺ですみません。

いつかUnityNotificationみたいなサービスが本家から出てきて、もっと簡易にプッシュ通知できたりするといいなあ、なんて。

※参考サイト

Apple Push Notification Serviceを使ってiOSにプッシュ通知をするために必要な証明書の準備方法 - ggった結果

quickstart-unity/messaging/testapp at master · firebase/quickstart-unity · GitHub

Firebase
Firebase Cloud Messaging  |  Firebase
https://firebase.google.com/docs/notifications/


Androidもやります

    
            
  • 1
  •         
  • 2
  •         
  • 3
  •     

“Unity” and Unity logos are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere, and are used under license.


免責事項

当サイトの広告バナー、リンクによって提供される情報、サービス内容について、当サイトは一切の責任を負いません。

また、当サイトの情報を元にユーザ様が不利益を被った場合にも、当サイトは一切の責任を負いません。

すべて自己責任でお願いします。