使用 Cloud Functions 扩展 Google Analytics

Google Analytics 提供事件报告,帮助您了解用户如何与应用进行互动。借助 Cloud Functions(第 1 代),您可以访问从 Apple 和 Android 设备记录的转化事件,并根据这些事件触发函数。

触发 Google Analytics 函数

Cloud Functions 支持 Google Analytics AnalyticsEvent。每当用户活动生成转化事件时,此事件就会触发。例如,您可以编写一个在生成 in_app_purchase 事件(表示发生了应用内购买)时触发的函数。您必须使用 functions.analytics.event() 方法指定要用于触发函数的 Analytics 事件,并在 onLog() 事件处理脚本中处理事件:

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

访问事件特性

您可以访问每个 Analytics 事件的所有相关参数和用户属性,包括事件的相关用户、设备、应用以及地理位置信息。如需查看参数和用户属性的完整列表,请参阅 functions.analytics 参考文档。

对于此示例演示的由购买触发的函数,您可能需要访问用户属性(例如用户的语言)和事件的价值 (valueInUSD)。利用事件的价值属性,示例函数可以检查相关事件是否为高价值转化事件,以便向高价值客户发送金额更高的优惠券。

/**
 * 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 中处理 Analytics 事件,请参阅 Google Analytics 文档functions.analytics 参考文档,并尝试运行代码示例 coupon-on-purchase