Firebase
for Android / iOS
@nory_kaname
自己紹介
● クックビズ株式会社所属
○ マネージャー
■ アプリの企画、開発
■ 採用活動
■ Android
■ iOS
■ テストエンジニア
■ Klipfolioのクリップ作成職人
■ たまにグロースハックっぽいこと
■ etc
執筆
プロの力が身につく Androidプログラミングの教科書 Android Internals
(TechBooster in C89 コミックマーケット89)
こんなアプリを作ってます
本編
Firebase
Android / iOS / モバイルWeb向け統合アプリ
- 開発支援
- 品質向上
- 獲得
- 収益
Firebase Analytics
特徴
- ユーザーとイベントが中心
- PV、スクリーン、セッションに注目せず
- ユーザーの行動についてインサイトを得る
- ユーザー属性(プロパティ)によって集計
- ユーザーを定義することが可能
- 有料広告キャンペーンの設定、成果の確認
- 目標設定可能
- 複数のイベント順を定義
詳しくはYouTubeで
https://www.youtube.com/watch?v=iT6EaIwtonY
セットアップ
パッケージ名登録 BundleID登録
アプリの登録
設定ファイルの追加
jsonファイルを追加 plistファイルを追加
ライブラリの追加
depenenciesに追加 Podfileに追加
初期化コードを追加(iOS)
( ˘ω˘)スヤァ
AppDelegateで初期化
Firebase Console画面
Firebase Analyticsの情報
特徴
- ユーザーとイベントが中心
- PV、スクリーン、セッションに注目せず
- ユーザーの行動についてインサイトを得る
- ユーザー属性によってアクセス元を判断
- ユーザーを定義することが可能
- 有料広告キャンペーンの設定、成果の確認
- 目標設定可能
- 複数のイベント順を定義
詳しくはYouTubeで
https://www.youtube.com/watch?v=iT6EaIwtonY
Consoleのイベント集計画面
Firebase Analyticsの情報
目標プロセス
目標プロセス
- ユーザー
- イベント数
- 遷移率
目標プロセスの設定
連続するイベントで指定
- 例
- Entry画面表示
- 登録ボタン押下
- 登録完了 → goal!!
イベントの種類
イベント
- 自動で集計するイベント
- 定義済みイベント
- カスタムイベント
イベントの種類
イベント
- 自動で集計するイベント
- 定義済みイベント
- カスタムイベント
自動で集計するイベント
Automatically collected events
- 初回起動、アプリ更新、アプリ削除、OS更新、クリアデータ
- Notificationの受信/開封/削除
- Firebase Cloud Messageのみ
- Dynamic LinkのOpen
意図的に送信しては行けないイベント
(can not be used)
イベントの種類
イベント
- 自動で集計するイベント
- 定義済みイベント
- カスタムイベント
定義済みのイベント
定義済みイベント
- Events: All apps
- Events: Retail/Ecommerce
- Events: Jobs, Education, Local Deals, Real Estate
- Events: Travel (Hotel/Air)
- Events: Games
Android
- FirebaseAnalytics.Event
iOS
- FiReventNames.h
イベントの種類
イベント
- 自動で集計するイベント
- 定義済みイベント
- カスタムイベント
カスタムイベント
ユーザー定義イベント
- 500種類まで
- イベント名はユニークで
- Prefixに”firebase”を付けない(SHOULD)
- 32文字、アルファベットとunderscoreのみ
パラメータ
定義済みイベント
- Android、FirebaseAnalytics.Param
- iOS、FIRParameterNames.h
ユーザー定義パラメータ
- Prefixに”firebase”を付けない(SHOULD)
- パラメータ名は24文字、アルファベットとunderscoreのみ
- 値は36文字まで(Stringの場合?)
Android - イベント送信方法
FirebaseAnalytics mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
// Bundleにパラメータ追加
Bundle bundle = new Bundle();
bundle.putString(FirebaseAnalytics.Param.ITEM_ID, id);
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, name);
bundle.putString(FirebaseAnalytics.Param.CONTENT_TYPE, "image");
// 送信
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SELECT_CONTENT,
bundle);
Bundleにパラメータと詰めて、logEvent()で送信
iOA - イベント送信方法
// 送信
FIRAnalytics.logEventWithName(kFIREventSelectContent, parameters: [
kFIRParameterContentType:"cont",
kFIRParameterItemID:"1"
])
logEventWithName()で送信
- パラメータは第二引数
ユーザープロパティ
ユーザーをカテゴライズ
- アプリごとに25種類まで属性を追加可能
- Prefixに”firebase”を付けない(SHOULD)
- パラメータ名は24文字、アルファベットとunderscoreのみ
- 値は36文字まで
// Android ユーザープロパティセット
FirebaseAnalytics mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);
mFirebaseAnalytics.setUserProperty("favorite_food", mFavoriteFood);
// iOS ユーザープロパティセット
FIRAnalytics.setUserPropertyString(food, forName: "favorite_food")
使ってみた所感
● いいね
○ セットアップ楽々
○ イベントのみで単純
● できるかな?
○ Google Analyticsと連携可能だけど未確認
○ Google Cloud MessageとFirebase Cloud Messageの
トークンの互換性?
○ 外部サービスと連携ができればうれしい
■ APIでデータとりたい
○ アプリごとにイベント・目標プロセスの設定が必要
■ import / exportあるかな?
ご静聴、ありがとうございました。

Firebase analytics for_android _ i_os