记录事件


本指南介绍如何在您的应用中记录事件。

事件可让您了解您的应用中发生了什么,例如用户操作、系统事件或错误。

Analytics 会自动为您记录一些事件,您无需为此添加任何代码。如果应用需要收集其他数据,您可以在应用中记录多达 500 种不同的 Analytics 事件类型。应用可记录的事件总量不受限制。请注意,事件名称区分大小写。即便两个事件的名称只是大小写不同,系统也会将其视作两个不同的事件。

准备工作

确保您已按照 Analytics 使用入门中的说明设置了您的项目,并且可以访问 Analytics

记录事件

配置 FirebaseApp 实例后,您就可以开始使用 logEvent() 方法记录事件。

为帮助您着手使用,Analytics SDK 定义了许多常见于各类型应用(零售、电子商务、旅行以及游戏应用等)的推荐事件。如需详细了解这些事件及其适用情形,请参阅推荐事件

您可以在 SwiftObjective-C 版常量参考文档中找到实现详情。

下面的示例演示了如何记录推荐的 kFIRSelectContent 事件:

Swift

Analytics.logEvent(AnalyticsEventSelectContent, parameters: [
  AnalyticsParameterItemID: "id-\(title!)",
  AnalyticsParameterItemName: title!,
  AnalyticsParameterContentType: "cont",
])

Objective-C

[FIRAnalytics logEventWithName:kFIREventSelectContent
                    parameters:@{
                                 kFIRParameterItemID:[NSString stringWithFormat:@"id-%@", self.title],
                                 kFIRParameterItemName:self.title,
                                 kFIRParameterContentType:@"image"
                                 }];

除了预设参数外,您还可以将以下参数添加到任意事件中:

  • 自定义参数:可使用自定义参数作为 Analytics 报告中的维度或指标。您可以对非数值事件参数数据使用自定义维度,而对更适合以数值形式表示的参数数据使用自定义指标。使用 SDK 记录自定义参数后,请注册维度或指标,以确保这些自定义参数能够出现在 Analytics 报告中。可依次点击以下各项完成此操作:“分析”>“事件”>“管理自定义设置”>“创建自定义维度”。

    自定义参数可用于每份报告都可能使用的受众群体定义中。如果您的应用已关联到 BigQuery 项目,自定义参数也将包含在导出至 BigQuery 的数据中。如需查看示例查询及更多内容,请访问 Google Analytics 4 BigQuery Export

  • kFIRParameterValue 参数:kFIRParameterValue 是一个通用参数,可用于累积与事件相关的关键指标,例如收入、距离、时间和分数。

如果推荐的事件类型未涵盖您的应用的特定需求,您可以按以下示例所示的方式记录自己的自定义事件:

Swift

Analytics.logEvent("share_image", parameters: [
  "name": name as NSObject,
  "full_text": text as NSObject,
])

Objective-C

[FIRAnalytics logEventWithName:@"share_image"
                    parameters:@{
                                 @"name": name,
                                 @"full_text": text
                                 }];

设置默认事件参数

您可以使用 setDefaultEventParameters 跨事件记录参数。默认参数会与记录的所有将来的事件相关联。

与自定义参数一样,请注册默认事件参数,以确保这些自定义参数显示在 Analytics 报告中。

Swift

Analytics.setDefaultEventParameters([
  "level_name": "Caverns01",
  "level_difficulty": 4
])

Objective-C

[FIRAnalytics setDefaultEventParameters:
  @{
  @"level_name": "Caverns01",
  @"level_difficulty": @(4)
}];

如果在 logEvent() 方法中指定了一个参数,则系统会使用该值而非默认值。

如需清除默认参数,请调用 setDefaultEventParameters 方法,并将参数设置为 nil

在 Xcode 调试控制台中查看事件

您可以启用详细日志记录功能以监控 SDK 的事件记录,从而帮助验证是否正确记录了事件,包括自动和手动记录的事件。

您可以按如下方式启用详细日志记录功能:

  1. 在 Xcode 中,依次选择 Product > Scheme > Edit scheme…
  2. 从左侧菜单中选择 Run
  3. 选择 Arguments 标签页。
  4. Arguments Passed On Launch 部分,添加 -FIRAnalyticsVerboseLoggingEnabled

下次您运行应用时,事件将显示在 Xcode 调试控制台中,有助于您即时验证事件是否正在发送。

在信息中心内查看事件

您可以在 Firebase 控制台信息中心内查看有关事件的汇总统计信息。这些信息中心会全天定时更新。如需立即测试,请按照上一部分中所述的方式使用 logcat 输出。

您可以在 Firebase 控制台的事件信息中心访问这些数据。此信息中心显示了为应用记录的每种不同事件自动创建的事件报告。