こんにちは。virapture株式会社のもぐめっとです。
今回はFirebase Summit 2020が行われたのでその内容をキャッチアップのためにアウトプットしていこうと思います。
発表された大体の内容はHelpful product updates from Firebase Summit 2020にまとめられてるので、これの和訳といっても過言ではないかもしれません。
認証エミュレーター
Firebase Authenticationのエミュレーターが実装されました。
認証エミュレーターの起動はこちらのコマンドを実行するだけ
$ firebase emulators:start
# authだけならこちら
$ firebase emulators:start --only auth
認証エミュレーターへの使い方は簡単で、クライアントでAuthを使う時にエミュレーターを指定するだけ
firebase.auth().useEmulator('http://localhost:9099/');
Firebase Admin SDKでは、FIREBASE_AUTH_EMULATOR_HOSTの環境変数がセットされていれば自動的にエミュレーターを使います
export FIREBASE_AUTH_EMULATOR_HOST="localhost:9099"
リンクでのメール認証やSMS認証とかもエミュレーターでできちゃいます。すごい。
コード上でこんな使い方をしていてこれ良いなと思いました。
Webの開発の時はこうやってる pic.twitter.com/fMeIE9n8kU
— nori 村本章憲 (@1amageek) October 29, 2020
hostingで公開前にプレビューできるPreview channels
こんな感じで使えます。わかりやすいgif。
使い方は下記になります。(公式ドキュメントより)
$ firebase hosting:channel:deploy {CHANNEL_ID}
CHANNEL_IDを、スペースを含まない文字列でなんでもいいみたいです。
このIDがプレビュー用URLに使われます。
実行するとURLがコンソールに表示されるのでそれにアクセスするだけです。
ちなみにexpireとかもつけれるみたいです。
$ firebase hosting:channel:deploy new-blog-post --expires 1d
1m, 12hなど細かい時間指定も可能。
デプロイしたリストがみたければこちら
$ firebase hosting:channel:list
ちなみに本番環境はliveというChannel IDで固定されているようです。
また、Github Actionsにも対応しているので、デプロイしたらpreview用のurlを生成とかもできちゃいます。
cf: Deploy to Firebase Hosting
Stripeによる課金処理のExtension追加
こちらに関しては以前私がやり方などまとめたのでそちらをご参照ください。
Firebase ExtensionsのRun Subscription Payments with Stripeを使ってサブスク課金をコードを書かずに実装する
Firebase extensionsのSend Invoices using Stripeを使って請求を送る
Extensionで課金処理が簡単にできちゃいます!すごい時代になった。
オンライン状況を確認するExtension追加
Detect Online Presenceというオンライン状況を確認できるExtensionが追加予定とのこと。
こちらはまだalpha版のようなので、Alpha Programに登録してればそのうち早く使えるようになります。
ソシャゲとかに使えそうですね。
裏側の仕組みはきっとrealtime databaseの機能を使っていい感じにやってくれるんじゃないかなぁとおもいます。
パフォーマンス監視ダッシュボードの刷新
重要なことに注目できるように、指標を追加できるようになりました。
cf: ダッシュボードで主要な指標を追跡する
(関わってるプロダクトでそもそもPerfomance SDKいれてなかったのでいれるようにしなければ・・・)
Remote Configの強化
また、semantic versioningに対応したことでバージョニング管理がRemoteConfig上でできるようになりました。
これでアプリ側で正規表現とか書かずにすみますね。
また、新しい値のセットのロールアウトを監視できるリアルタイムのフェッチ要求と、ユーザー間でのパラメーター値の分布を示すフェッチの割合が見れるようになり、ちゃんと意図した条件でユーザに反映されているかもわかるようになりました。
CrashlyticsデータをBigQueryに自動export
Crashlyticsデータをより分析しやすくするためにとりあえずリンクしておくと便利そうです。
Crashlytics データを BigQuery にエクスポートする
GoogleAnalyticsの新しいAPI
Measurement Protocol (Google Analytics 4)
イベントを直接GAに記録できるAPIです。これでCloud Functionsとかでイベントを記録できるようになりますね。
Analytics Data API
GAのレポートにプログラムでアクセスできるようになりました!
管理画面で好きにレポート作成がしやすくなりそうです。
Google Analytics Admin API
Analyticsアカウントを構成し、ユーザー権限を設定できます。
会社などでアカウント管理するのに便利そうですね。
BigQueryとFirebaseのセグメント連携
cf: セグメントのインポート
BigQueryのカスタムセグメントをFirebaseにインポートすることができるようになりました。
たとえば、eコマースアプリと実店舗がある場合は、ストアなどのオフラインソースからデータをインポートし、In-AppMessagingを使用してBigQueryのデータを用いてアプリ内プロモーションを送信できます。
もぐめっとの所感
年々Firebaseは便利になって大きいところでも小さいところでも、手が届くようになってきたなぁと感じます。
Stripeとかはとくに今後のサービス作りに衝撃を与えたのではないかと思います。
また、地味ですけどGAのAPI公開とかはマーケティング業界におおきな変革が訪れる様になったのかなと思います。
管理画面と連携してGAのデータを表示するとかもできるようになると思うのでより分析が捗ることかと思います。(エンジニア陣は実装頑張れ・・・)
今後のFirebaseに益々期待です!