Unity×FirebaseでリモートPush通知【その1】

f:id:nuakam:20180924115239j:plain:w500

以前ローカル通知の記事を書きました。
大した話でもなかったのでリンクは特に張りません (`・ω・´)ゞ

軽く概要をおさらいすると、アプリ通知にはいろいろな種類があります。
ざっくり説明すると以下の通りです。

通知の出し方

  • ローカル環境のもの
  • ネットワーク経由のもの

通知の種類

  • バッチ通知
  • プッシュ通知

Firebaseでリモート通知

先に言うとFirebaseよりもonesignalのほうが優秀です。
【プッシュ通知】Y Combinatorも投資するOneSignalがFirebaseより便利で素晴らしかった


作りきったあとでわかった衝撃の事実。


それでもFirebase使いたい変態な人のためにも備忘録。

やりたいこと

  • 既存のUnityプロジェクトに
  • Firebase を使って
  • iOSとAndroid用の
  • プッシュ通知を実装したい

環境

  • Windows10
  • Unity 2017.1.1.p3
  • Xcodeは2017年4月時点で最新

Firebase設定

会員登録、ログインまで終了している状態から。

Android編

f:id:nuakam:20180411161629p:plain
ログインするとこんな画面が出てきます。


以下の手順に沿ってプロジェクトを作成

1.プロジェクトを追加をクリック。

2.プロジェクト名は適宜分かりやすい名前を。国は通知を送る自分の国を。(世界向けアプリで予約投稿するときのタイムゾーンに使ってるっぽい)

3.そのままAndroidアプリを追加。

4.パッケージ名はバンドルIDです。

5.設定ファイルの追加でjsonファイルをダウンロード


次はUnity側

https://firebase.google.com/docs/unity/setup?authuser=2
このリンクからsdkをダウンロード


この圧縮フォルダ中にアナリティクス用だとか色々なパッケージが入っている。
今回はプッシュ通知を使いたいため、

FirebaseMessaging.unitypackage

を自分のUnityにインポート。


※1.ここでエラーが出た(エラーの修正はまたいつか需要があったら書く)
めっちゃ奮闘した


とりあえず順調に進んだと仮定して

ダウンロードしたjsonファイルをprojectに入れる。
置く場所はどこでもいい。
適当な場所にぽーい ( ´ ▽ ` )ノ3三[json]

これでAndroidにリモート通知を送れる環境が整った


ブラウザに戻って
GROW / Cloud Messaging をクリック


f:id:nuakam:20180417175231p:plain


新しいメッセージから詳細情報を入力

f:id:nuakam:20180417175543p:plain

  • メッセージ文 (通知本文。デフォルトだと文字数制限あり。改行NG)
  • Label (Firebase内で分かりやすくなるように名前をつける)
  • 配信日(そのまま)

f:id:nuakam:20180417175959p:plain

つづく…