スマホアプリ開発を加速する,Firebaseを使ってみよう

第7回 Google I/O 2016で発表された新しいFirebaseを覗いてみよう

この記事を読むのに必要な時間:およそ 6 分

2016年5月18日~20日に行われたGoogle最大のデベロッパー向けカンファレンスGoogle I/O 2016で,Firebaseのメジャーアップグレードが発表されました。これによりFirebaseは統合モバイルプラットフォームとでも言うべきものに進化し,さまざまなサービスを包括するより大きなプロダクトになりました。

図1 New Firebase

図1 New Firebase

Illustration created by Google.

今回は

  1. 新しくなったFirebaseの概要
  2. これまでのFirebase環境からのマイグレーション方法

について見ていきたいと思います。

新しくなったFireabaseの概要

これまでの連載で解説してきたように,これまでのFirebaseが提供するサービスは

  • リアルタイムデータベース
  • 認証基盤
  • 静的Webサイトホスティング

等に限られていましたが,今回の大々的なアップグレードによりはるかに大きな機能を有する一大MBaaSへと変貌を遂げました。そのプロダクト数の多さ,Google I/Oでのセッションでの熱の入りようを鑑みても,FirebaseはGoogleがいま最も力を入れているモバイルプラットフォームと言い切ってしまって差し支えありません。

新しいFirebaseは次に挙げる4大フィーチャーから成り立っています。

  • Analytics
  • Develop
  • Grow
  • Earn

これら4大フィーチャーがさらに複数のプロダクトを抱えています。とてもすべてを紹介しきれないほど多いですが,筆者が重要だと考えるものを中心にご紹介したいと思います。

Analytics

Analyticsはその名の通り分析基盤です。これは従来のGoogle Analyticsを置き換えるもので,データのダウンサンプリング(間引き)や送信イベント数制限等も一切なく,無制限に使えるにもかかわらず完全無料です。新しいFirebaseではこのAnalyticsを中核技術と位置付けており,これから紹介するさまざまなプロダクトに横軸を通して連携できるようになっています。

ユーザ層やアプリの使用頻度,滞在時間やひとりあたりの売上など,これまで複数の分析サービスを組み合わせていたようなことが1ヵ所でできるようになります。また,ユーザをセグメントに分けて特定の層にだけプッシュ通知を送ったり,Google BigQueryと連動して詳細な解析をすることなども可能です。

Analyticsに関してはこの連載の次回でアプリに組み込む方法をご紹介予定です。

Develop

Developは開発支援に特化したフィーチャーで,以下のようなプロダクト群を内包しています。

  • Cloud Messaging
  • Authentication
  • Realtime Database
  • Storage
  • Hosting
  • Remote Config
  • Test Lab
  • Crash Reporting
Cloud Messaging
Firebae Cloud Messagingはクロスプラットフォームなメッセージ配信基盤です。これまでGoogle Cloud Messaging(GCM)と呼ばれていたものが,Firebaseプロダクト群に取り込まれました。
Authentication
従来のFirebaseから存在する認証基盤です。
Realtime Database
従来のFirebaseから存在するリアルタイムデータベースです。
Storage
従来のFirebaseには写真やファイル等のアップロード機能がなく外部サービスを自前で利用する必要がありましたが,Google Cloud Storageと連動して簡単かつ安全にファイルのアップロードをすることができるようになりました。これは待ちわびていた機能です。
Storageに関しても次回にアプリに組み込む方法をご紹介予定です。
Hosting
従来のFirebaseから存在する静的Webサイトホスティングです。
Remote Config
Remote Configはアプリを再リリースすることなくコンテンツの一部を差し替えたり,簡単にA/Bテストを実施することができる非常に強力な新機能です。プラットフォームや国ごとにコンテンツを出し分けたり,数字やフラグを切り替えたりすることも容易です。
Remote Configに関しても次回でアプリに組み込む方法をご紹介予定です。
Test Lab
Googleのデータセンター上に置かれている膨大な実機を使ったテストをネットワーク越しに行うことができるサービスです。Android Studioから直接実行する機能も提供されています。
Crash Reporting
アプリのクラッシュレポート機能です。クラッシュを検知するだけでなく,AnalyticsやNotificationと連携してクラッシュしたユーザにだけアップデートを促したりするようなことも可能です。

Grow

アプリの成長フェーズを支援するプロダクト群を内包しています。

  • Notifications
  • App Indexing
  • Dynamic Links
  • Invites
  • AdWords
Notifications
プッシュ通知を簡単に送ることができるWebコンソールです。1行もコードを書かなくても管理画面からプッシュ通知を送れるほか,AnalyticsやCrash Reportingと連携して特定のユーザにだけ通知を送ることもできます。
App Indexing
既存のApp IndexingがFirebaseプロダクト群に取り込まれました。Google検索結果にアプリの情報を表示し,ユーザに回遊を促すことができます。
Dynamic Links
より進化したディープリンクです。1つのリンクでiOSとAndroidなどプラットフォームごとに適切な場所に誘導したり,リンクに対応するアプリをインストールしているか否かで挙動を変えたりすることができます。
Invites
紹介コードやクーポンをディープリンクを使ってSMSやEメール越しに簡単にシェアすることができる機能を提供します。前述のDynamics Linksが利用されており,アプリが入っていなくてもユーザはクリックするだけで簡単にアプリをインストールしてクーポンの適用まで離脱することなく行うことができます。
AdWords
既存のGoogle AdWordsがFirebaseプロダクト群に取り込まれました。アプリの宣伝を適切なユーザに簡単に行うことができます。

Earn

アプリの収益化フェーズを支援するフィーチャーです。

AdMob
既存のGoogle AdMobがFirebaseプロダクト群に取り込まれました。AdMobが提供するさまざまな種類の広告商品とアドネットワークを使ってアプリの収益化を助けます。

新機能まとめ

このように,新しいFirebaseはGoogleの既存のプロダクト群を取り込みつつ,Analyticsを中核としてそれぞれ補いあいながら1つのMBaaSとしてうまく協調するように再設計されていることが分かります。

開発し,リリースし,分析し,改善を繰り返すというアプリのリリースサイクルにFirebaseは見事にマッチしていることが見て取れるでしょう。

著者プロフィール

白山文彦(しろやまふみひこ)

サーバサイド,インフラ,Androidなど何でもやるプログラマ。

コメント

コメントの記入