Firebase Google Analytics


Google Analyticsの起動


Google Analyticsは、ユーザーがアプリケーションをどのように使用するかを知るツールです.SDKは、トラフィックに必要なコンテンツを測定するために、大量のイベントおよびユーザー属性を自動的にキャプチャすることができる.取得したデータは、Firebase Console Dashboardで表示できます.ここから、現在使用されているアプリケーションのユーザー数、場所など、データの要約情報を取得できます.分析によりユーザの行動を知ることができ,アプリケーションマーケティングに説得力を加え,高付加価値ユーザを導くのに有効である.分析は、ベンチマークを使用した分析や、分析データをBigQueryに接続して、多数または複数のデータソースを統合するなど、複雑な分析を行うことができます.詳細はGoogle Analytics Documentを参照してください.
プロジェクトを追加すると、既定の設定Analyticsが起動します.以下を参照して項目を追加します.
https://firebase.google.com/docs/analytics/get-started?platform=ios

ロギングイベント


1.イベントログとは?


イベントは、ユーザーの動作、システムイベント、エラーなどのアプリケーションで発生した状況を把握する手段です.Google Analyticsは、いくつかのイベントを自動的に記録し、追加のコードなしでイベントを受信することができます.さらにデータを収集する必要がある場合は、最大500種類のイベントタイプを作成できます.各イベントの合計成分は制限されません.イベント名は大文字と小文字を区別することに注意してください.

2.ロギングイベントの開始


FirebaseAppインスタンスの構成が完了すると、logEvent()メソッドを使用してイベントの記録を開始できます.では、どんな活動をしますか.グーグルはこの迷った問題を解決します.最初の開発者のために、様々なタイプのアプリケーションで共通に使用されている様々な推奨アクティビティを整理しました.適切なイベントを選択し、事前に定義されたパラメータを使用して記録し、いつでも使用できます.

3.ロギングイベント


「≪推奨イベント|RecommendationEvents|emdw≫」に、ユーザーがコンテンツを選択したことを記録するイベントを追加します.

関連ドキュメントに入り、ユーザが特定のタイプのコンテンツを選択したときに記録されるイベントであることを示す.また、このアクティビティは、人気のあるコンテンツとは何かを理解するのに役立ち、アプリケーションのコンテンツを分類するのに役立ちます.このドキュメントには、swiftで使用できる事前定義されたパラメータとイベントがリストされています.必要なイベントとパラメータを検索して使用します.これにより、Dashboardでより直感的にデータを表示できます.

次の図に示すように、各イベントの名前、パラメータを適切な値に渡すとよい.logEvent()メソッドを呼び出すと、自動的に完了すると定義されたイベントを検索することもできます.
Analytics.logEvent(AnalyticsEventSelectContent, parameters: [
  AnalyticsParameterItemID: "id-\(title!)",
  AnalyticsParameterItemName: title!,
  AnalyticsParameterContentType: "cont"
])
このコードをユーザがコンテンツを選択したコードに入れればよい.たとえば、ユーザーがtableViewのセルを選択して記録する場合、tableView.didSelect(:indexPath)に入れればいいですその後、ユーザのアイデンティティ、コンテンツのタイトル、およびタイプを設定することによって、より具体的な情報をAnalyticsに渡すことができる.以下にRxSWIFTを使用する方法を示します.
        Observable.zip(
            tableView.rx.modelSelected(Post.self),
            tableView.rx.itemSelected,
            resultSelector: { ($0, $1)})
            .bind { [unowned self] (post, indexPath) in
                self.tableView.deselectRow(at: indexPath, animated: false)
                Analytics.logEvent(AnalyticsEventSelectContent, parameters: [
                    AnalyticsParameterItemID: "id-\(post.postID)",
                    AnalyticsParameterItemName: post.caption,
                    AnalyticsParameterContentType: "post"
                ])
            }
            .disposed(by: disposeBag)
対応するイベントがない場合は、40文字以下の大文字と小文字を区別する文字列を入力してカスタムイベントを作成することもできます.パラメータなしでイベントのみが必要な場合は、nilに設定できます.テキストパラメータは最大10個、数値パラメータは最大40個まで使えると言われていますので、慎重に使用してください.
Analytics.logEvent("share_image", parameters: [
  "name": name as NSObject,
  "full_text": text as NSObject,
])
Google Analyticsは通常、アプリケーションで収集した情報を約1時間ごとにアップロードします.しかし、デバッグモードが実施されると、リアルタイムで更新される.この点を考慮して、自分が望むデバッグ環境を構築しましょう.

ユーザー属性の記録


1.ユーザー属性とは?


ユーザー属性は、言語環境設定、地理的位置など、ユーザー層の区分を記述するために開発者が定義した属性です.ユーザー・プロパティを使用して、アプリケーションの潜在的な顧客を定義します.Google Analyticsはいくつかのユーザー属性を自動的に記録することができ、追加のコードを必要とせずに使用することができます.さらにデータを収集する必要がある場合は、最大25個を設定し、大文字と小文字を区別できます.
年齢、性別、興味分野のプロパティは、アプリケーションでadSupportフレームワークに接続されている場合にのみ自動的に収集されます.

2.ユーザー属性ログの設定


現在アプリケーションを使用しているユーザーを記述するGoogle Analyticsユーザーのプロパティを設定します.
  • は、まずsetuUserProperty()メソッドを使用して、ユーザ属性を設定するコードを追加する.ユーザーを自動的に分類したり、自分がどんな人なのかをユーザーに知らせたりして、そのタスクを完了することができます.次のコードではfoodは「favorite food」分類の値です.これにより、ユーザが最も好きな食べ物が何であるかに基づいて分類し、コンソール上でユーザのパターンを分析することができる.
  • 	Analytics.setUserProperty(food, forName: "favorite_food")
  • に続いて、Firebaseコンソールの独立したユーザー属性ページ(Audiences)に属性を登録する必要があります.ここにユーザーを登録してこそ、分析に使用できます.
  • 整理する


    これはとても役に立つSDKです.実施自体はほとんど難易度はないが,どこから情報を得るかを考慮する必要がある.上のユーザーの行動を追跡するほか、google allianceで行うことができる分析もたくさんあります.必要なところがあれば、積極的に利用しましょう.