事件日志记录

public final class EventLogRecord
extends Object implements Parcelable

java.lang.Object
   ↳ android.adservices.ondevicepersonalization.EventLogRecord


要在 EVENTS 表中记录的数据。 EVENTS 表中的每条记录都与请求表 RequestLogRecord#getRows() 中现有 RequestLogRecord 的一行相关联。“EVENTS”表格的用途是向之前请求中的记录数据添加补充信息,例如,在用户点击呈现的 WebView 中的链接 IsolatedWorker#onEvent(EventInput, java.util.function.Consumer) 时记录事件。“EVENTS”表格的内容可由联邦学习协助的模型训练或 Federated Analytics 协助的跨设备统计分析使用。

总结

嵌套类

class EventLogRecord.Builder

EventLogRecord 的构建器

继承的常量

字段

public static final Creator<EventLogRecord> CREATOR

公共方法

int describeContents()

描述此 Parcelable 实例的编排表示法中包含的特殊对象的种类。

boolean equals(Object o)

指示某个其他对象是否“等于”此对象。

ContentValues getData()

要记录的其他数据。

RequestLogRecord getRequestLogRecord()

此载荷应关联的现有 RequestLogRecord

int getRowIndex()

应与此载荷关联的现有 RequestLogRecord 中的行的索引。

long getTimeMillis()

事件的时间(以毫秒为单位)。

int getType()

由服务分配的用于标识此载荷的标识符。

int hashCode()

返回对象的哈希代码值。

void writeToParcel(Parcel dest, int flags)

将此对象展平为一个地块。

继承的方法

字段

公共方法

describeContents

public int describeContents ()

描述此 Parcelable 实例的编排表示法中包含的特殊对象的种类。例如,如果对象将在 writeToParcel(android.os.Parcel, int) 的输出中添加一个文件描述符,那么此方法的返回值就必须包含 CONTENTS_FILE_DESCRIPTOR 位。

开球回攻次数
int 一个位掩码,表示此 Parcelable 对象实例所编排的特殊对象类型集。 值为 0CONTENTS_FILE_DESCRIPTOR

equals

public boolean equals (Object o)

指示某个其他对象是否“等于”此对象。

equals 方法可针对非 null 对象引用实现等价关系:

  • 该方法具有自反性:对于任何非 null 引用值 xx.equals(x) 应返回 true
  • 该方法具有对称性:对于任何非 null 引用值 xy,当且仅当 y.equals(x) 返回 true 时,x.equals(y) 才应返回 true
  • 该方法具有传递性:对于任何非 null 引用值 xyz,如果 x.equals(y) 返回 truey.equals(z) 返回 true,则 x.equals(z) 应返回 true
  • 该方法具有一致性:对于任何非 null 引用值 xy,多次调用 x.equals(y) 时,只要没有修改对象的 equals 比较中使用的任何信息,就会一致地返回 truefalse
  • 对于任何非 null 引用值 xx.equals(null) 应返回 false

Object 类的 equals 方法可对对象实现最具辨别性的等价关系;也就是说,对于任何非 null 引用值 xy,当且仅当 xy 引用同一对象时,此方法才会返回 truex == y 时值为 true)。

请注意,一般而言,每次替换此方法时,都需要替换 hashCode 方法,以便维持 hashCode 方法的通用协定,该协定规定相等的对象必须具有相等的哈希代码。

参数
o Object:此值可以为 null

开球回攻次数
boolean 如果此对象与 obj 参数相同,则返回 true,否则返回 false

getData

public ContentValues getData ()

要记录的其他数据。如果不需要将其他数据作为事件的一部分写入,并且只需记录事件的发生,则可以为 null。

开球回攻次数
ContentValues

getRequestLogRecord

public RequestLogRecord getRequestLogRecord ()

此载荷应关联的现有 RequestLogRecord

开球回攻次数
RequestLogRecord 此值可以为 null

getRowIndex

public int getRowIndex ()

应与此载荷关联的现有 RequestLogRecord 中行的索引。

开球回攻次数
int 值不小于 0

getTimeMillis

public long getTimeMillis ()

事件的时间(以毫秒为单位)。

开球回攻次数
long

getType

public int getType ()

由服务分配的标识符,用于标识此载荷。RequestLogRecord 中的每一行最多可与一个指定类型的事件相关联。如果 RequestLogRecord 中的某一行中已存在其他类型相同的事件,平台会删除相应事件。必须大于 0 且小于 128。这样,系统便可为 RequestLogRecord 中的每一行写入多达 127 个事件。

开球回攻次数
int 值介于 1 和 127(含)之间

hashCode

public int hashCode ()

返回对象的哈希代码值。之所以支持此方法,是为了支持哈希表(例如由 HashMap 提供的表)。

hashCode 的通用协定如下:

  • 每当在 Java 应用执行期间在同一个对象上多次调用该方法时,只要没有修改对象的 equals 比较中使用的任何信息,hashCode 方法都必须始终返回相同的整数。在应用的不同执行之间,此整数无需保持一致。
  • 如果根据 equals(Object) 方法判断两个对象相等,则对这两个对象分别调用 hashCode 方法必须产生相同的整数结果。
  • 而如果根据 equals(java.lang.Object) 方法判断两个对象不相等,将不要求对这两个对象分别调用 hashCode 方法必须产生不同的整数结果。但是,程序员应注意,为不相等的对象产生不同的整数结果可能会提高哈希表的性能。

在合理可行的前提下,由 Object 类定义的 hashCode 方法确实会针对不同的对象返回不同的整数。(hashCode 不一定会在某个时间点作为对象内存地址的某个函数实现。)

开球回攻次数
int 此对象的哈希代码值。

writeToParcel

public void writeToParcel (Parcel dest, 
                int flags)

将此对象扁平化为 Parcel。

参数
dest Parcel:此值不能为 null

flags int:关于如何写入对象的其他标志。可为 0 或 Parcelable.PARCELABLE_WRITE_RETURN_VALUE。 值为 0Parcelable.PARCELABLE_WRITE_RETURN_VALUE 和 android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES 的组合