Firebase Summit で発表されたすべての情報をご覧ください。Firebase を使用してアプリ開発を加速し、自信を持ってアプリを実行する方法を紹介しています。詳細

クラウド機能でGoogleAnalyticsを拡張する

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Google アナリティクスは、ユーザーがアプリをどのように操作しているかを理解するのに役立つイベント レポートを提供します。 Cloud Functions を使用すると、Apple および Android デバイスからログに記録した変換イベントにアクセスし、それらのイベントに基づいて関数をトリガーできます。

Google アナリティクス関数をトリガーする

Cloud Functions は、Google アナリティクスのAnalyticsEventをサポートしています。このイベントは、ユーザー アクティビティによってコンバージョン イベントが生成されるたびにトリガーされます。たとえば、アプリ内購入が発生したことを示すin_app_purchaseイベントが生成されたときにトリガーされる関数を作成できます。 functions.analytics.event()メソッドを使用して関数をトリガーする Analytics イベントを指定し、 onLog()イベント ハンドラー内でイベントを処理する必要があります。

exports.sendCouponOnPurchase = functions.analytics.event('in_app_purchase').onLog((event) => {
  // ...
});

イベント属性へのアクセス

アナリティクス イベントごとに、関連するすべてのパラメータとユーザー プロパティにアクセスできます。これらには、ユーザー、デバイス、アプリ、およびイベントの地理情報に関する情報が含まれます。パラメータとユーザー プロパティの完全なリストについては、 functions.analyticsリファレンスを参照してください。

このサンプルに示されている購入によってトリガーされる関数の場合、ユーザーの言語やイベントの値 ( valueInUSD ) などのユーザー属性にアクセスすることができます。この 2 番目の属性により、サンプル関数はこれが価値の高いコンバージョン イベントであるかどうかをテストし、価値の高い顧客に価値の高いクーポンを送信できます。

/**
 * After a user has completed a purchase, send them a coupon via FCM valid on their next purchase.
 */
exports.sendCouponOnPurchase = functions.analytics.event('in_app_purchase').onLog((event) => {
  const user = event.user;
  const uid = user.userId; // The user ID set via the setUserId API.
  const purchaseValue = event.valueInUSD; // Amount of the purchase in USD.
  const userLanguage = user.deviceInfo.userDefaultLanguage; // The user language in language-country format.

  // For purchases above 500 USD, we send a coupon of higher value.
  if (purchaseValue > 500) {
    return sendHighValueCouponViaFCM(uid, userLanguage);
  }
  return sendCouponViaFCM(uid, userLanguage);
});

次のステップ

Cloud Functions でのアナリティクス イベントの処理の詳細については、 Google アナリティクスのドキュメントfunctions.analyticsリファレンスを参照し、コード サンプルのcoupon-on-purchase を実行してみてください。