事件(Events)

public struct Events

Realm 事件记录可用于记录在 Realm 上执行的所有读取和写入,并将它们报告给服务器。 通过设置用于打开 Realm 的Realm.ConfigurationeventConfiguration属性来启用事件记录,然后在Realm上使用events属性获取Events实例。

  • 开始记录具有给定活动名称的事件。

    当范围结束时,在事件范围内运行的所有查询和实例化的所有对象都将自动报告为“读取”事件。 在事件范围内修改的所有对象都会产生“写入”事件,这些事件报告对象的初始状态以及所有更改的属性的新值。

    声明

    Swift

    public func beginScope(activity: String) -> Scope

    返回值

    用于提交或取消作用域的作用域对象。

  • 记录自定义事件。

    该函数将事件保存到本地磁盘,然后异步发送到服务器。 当事件数据成功持久保存时,而不是在实际上传完成时,会调用可选的完成函数。

    此函数不与事件作用域交互,并且可以在没有活动作用域的情况下调用。

    声明

    Swift

    public func recordEvent(activity: String, eventType: String? = nil, data: String? = nil,
                            completion: ((Swift.Error?) -> Void)? = nil)

    参数

    activity

    活动名称。 这是存储在activity事件属性中的任意字符串。

    eventType

    事件的类型。 这是存储在eventType事件属性中的任意字符串。

    data

    此事件的数据有效负载。 如果提供,则为存储在data事件属性中的字符串。 请注意,虽然自动生成的事件都在此字段中存储 JSON,但自定义事件不需要这样做。

    completion

    一个可选的完成处理程序,一旦事件保存到事件 Realm(但不一定上传到服务器)或发生错误,就会调用该处理程序。 nil 错误表示成功。

  • 将事件配置中提供的元数据替换为新值。

    如果在事件作用域处于活动状态时调用,则在下一个事件作用域开始之前不会使用新的元数据。

    有关事件元数据的更多详细信息,请参阅EventConfiguration.metadata

    声明

    Swift

    public func updateMetadata(_ newMetadata: [String : String])
  • 表示活动事件范围的对象,可用于提交或取消范围。

    查看更多

    声明

    Swift

    public class Scope
  • 记录自定义事件。

    此函数将事件保存到本地磁盘,然后异步发送到服务器。 返回的未来在事件数据成功持久化时完成,而不是在实际上传完成时完成。

    此函数不与事件作用域交互,并且可以在没有活动作用域的情况下调用。

    声明

    Swift

    @_disfavoredOverload
    func recordEvent(activity: String, eventType: String? = nil, data: String? = nil)
            -> Future<Void, Error>

    参数

    activity

    活动名称。 这是存储在activity事件属性中的任意字符串。

    eventType

    事件的类型。 这是存储在eventType事件属性中的任意字符串。

    data

    此事件的数据有效负载。 如果提供,则为存储在data事件属性中的字符串。 请注意,虽然自动生成的事件都在此字段中存储 JSON,但自定义事件不需要这样做。