この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
こんにちは、モバイルサービス部橋本です 今回は、Firebase DynamicLinksのイベント数の取得について調査したので、その内容についてまとめます
Firebase DynamicLinksの生成
DynamicLinkの作成方法は以下の4つの方法があります
ただし、手動で作成した場合はAnalyticsの対象にはならないので、注意が必要です。
- Firebase コンソールを使用する
- iOS と Android で Dynamic Link Builder API を使用する
- REST API を使用する
- URLパラメータを使用して、手動で作成する
Firebase ドキュメント-ダイナミック リンクを作成する
トラッキングできるイベントの種類
上記の手動以外で生成したDynamicLinksに対して、トラッキングできるイベントの種類は以下のようになっています
- アプリの初回起動数
- アプリの再開数
- クリック数
- リダイレクト数
- アプリ インストール数 (Play ストアのみ)
Firebase ドキュメント-Dynamic Links アナリティクス データを表示する
イベント数を計測してみる
DynamicLinks Analytics APIを利用して、実際にAnalyticsイベント数を計測してみます
アクセストークンの取得
DynamicLinks Analytics APIにアクセスするためのアクセストークンを取得します
- Firebaseのコンソール画面にログインし、「プロジェクトの設定」 - 「サービスアカウント」をクリックします
- 画面内の「新しい秘密鍵の生成」ボタンから秘密鍵をダウンロードします
- 上記で取得した秘密鍵ファイルを使用して、以下のようにアクセストークンを取得します
【Node.jsの場合】
var google = require("googleapis");
// Load the service account key JSON file.
var serviceAccount = require("path/to/serviceAccountKey.json");
// Specify the required scope.
var scopes = [
"https://www.googleapis.com/auth/firebase"
];
// Authenticate a JWT client with the service account.
var jwtClient = new google.auth.JWT(
serviceAccount.client_email,
null,
serviceAccount.private_key,
scopes
);
// Use the JWT client to generate an access token.
jwtClient.authorize(function(error, tokens) {
if (error) {
console.log("Error making request to generate access token:", error);
} else if (tokens.access_token === null) {
console.log("Provided service account does not have permission to generate access tokens");
} else {
var accessToken = tokens.access_token;
// Include the access token in the Authorization header.
}
});
成功するとアクセストークンが取得できます。
続いて、取得したアクセストークンを利用して DynamicLinks Analytics API からイベント数を計測します。
DynamicLinks Analytics APIからイベント数を計測
以下のHttpリクエストを実行することで、イベント数を計測できます。
GET https://firebasedynamiclinks.googleapis.com/v1/<SHORT_DYNAMIC_LINK>/linkStats?durationDays=<DURATION>
Authorization: Bearer <ACCESS_TOKEN>
- SHORT_DYNAMIC_LINK : 生成したDynamicLink
- DURATION : データの取得日数(過去○日分)
- ACCESS_TOKEN : 取得したアクセストークン
成功すると、以下のようなレスポンスが取得でき、それぞれのイベント数が計測できます
{
"linkEventStats": [
{
"count": "1",
"event": "APP_RE_OPEN",
"platform": "ANDROID"
},
{
"count": "1",
"event": "CLICK",
"platform": "ANDROID"
}
]
}