Catch up on everthing we announced at this year's Firebase Summit. Learn more

记录事件

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

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

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

准备工作

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

记录事件

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

为帮助您着手使用,Analytics SDK 定义了许多常见于各种类型的应用(零售、电子商务、差旅以及游戏应用等)的推荐事件。如需详细了解这些事件及其适用情形,请在 Firebase 帮助中心浏览 [事件和属性] [suggested-events-hc] 相关文章。

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

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

Swift

注意:此 Firebase 产品不适用于 macOS 目标平台。
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 报告中的自定义参数。在每份报告的受众群体定义中,也可以使用这些自定义参数作为过滤条件。如果您的应用已关联到 BigQuery 项目,自定义参数也将包含在导出至 BigQuery 的数据中。

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

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

Swift

注意:此 Firebase 产品不适用于 macOS 目标平台。
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 跨事件记录参数。默认参数会与记录的所有将来的事件相关联。

Swift

注意:此 Firebase 产品不适用于 macOS 目标平台。
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 部分,添加 -FIRAnalyticsDebugEnabled

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

在信息中心内查看事件

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

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