已在 API 级别 34 中引入
也已在广告服务扩展 4 中引入

广告 ID

public class AdId
extends Object

java.lang.Object
   ↳ android.adservices.adid.AdId


每个资料的设备级唯一广告 ID,可由用户重置。

广告联盟可能会使用AdId来针对用户兴趣投放广告 (IBA) 进行创收,即 定位和再营销广告。用户可能会限制此标识符的可用性。

摘要

常量

String ZERO_OUT

当用户具有 limited ad tracking 时返回的清零 ad id

公共构造函数

AdId(String adId, boolean limitAdTrackingEnabled)

创建 AdId 的实例

公共方法

boolean equals(Object o)

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

String getAdId()

广告 ID。

int hashCode()

返回对象的哈希代码值。

boolean isLimitAdTrackingEnabled()

检索已启用的广告跟踪限制设置。

String toString()

返回对象的字符串表示。

继承的方法

Object clone()

创建并返回此对象的副本。

boolean equals(Object obj)

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

void finalize()

垃圾回收时,由垃圾回收器针对对象调用 确定没有对对象的更多引用。

final Class<?> getClass()

返回此 Object 的运行时类。

int hashCode()

返回对象的哈希代码值。

final void notify()

唤醒正在等待此对象的 监控。

final void notifyAll()

唤醒正在等待此对象的监控器的所有线程。

String toString()

返回对象的字符串表示。

final void wait(long timeoutMillis, int nanos)

导致当前线程处于等待状态,直到其被唤醒,这通常是 通知中断,或者直到 经过了一定量的实时。

final void wait(long timeoutMillis)

导致当前线程处于等待状态,直到其被唤醒,这通常是 通知中断,或者直到 经过了一定量的实时。

final void wait()

导致当前线程处于等待状态,直到其被唤醒,这通常是 通知中断

常量

零_OUT

已在 API 级别 34 中引入
也已在广告服务扩展 4 中引入
public static final String ZERO_OUT

当用户具有 limited ad tracking 时返回的清零 ad id

常量值: “00000000-0000-0000-0000-000000000000”

公共构造函数

广告 ID

已在 API 级别 34 中引入
也已在广告服务扩展 4 中引入
public AdId (String adId, 
                boolean limitAdTrackingEnabled)

创建 AdId 的实例

参数
adId String:从提供程序服务获取。 此值不能为 null

limitAdTrackingEnabled boolean:来自提供程序服务的值,用于确定 adId。

公共方法

equals

API 级别 34 中引入
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:用来进行比较的参照对象。

返回值
boolean 如果此对象与 obj 参数相同,则返回 true;否则返回 false

获取广告 ID

已在 API 级别 34 中引入
也已在广告服务扩展 4 中引入
public String getAdId ()

广告 ID。

广告 ID 的值取决于 isLimitAdTrackingEnabled()AdServicesPermissions.ACCESS_ADSERVICES_AD_ID 的组合。

当用户为 limiting ad tracking 时,该 API 会返回 ZERO_OUT。这会禁止调用方出于变现目的跟踪用户。

否则,会返回设备和用户独有的字符串,该字符串可用于跟踪 用户投放广告

返回
String 此值不能为 null

hashCode

API 级别 34 中引入
public int hashCode ()

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

hashCode 的通用协定如下:

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

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

返回值
int 此对象的哈希代码值。

isLimitAdTrackingEnabled

已在 API 级别 34 中引入
也已在广告服务扩展 4 中引入
public boolean isLimitAdTrackingEnabled ()

检索已启用的广告跟踪限制设置。

如果用户启用了限制广告跟踪,此值为 true,否则为 false

返回
boolean

toString

API 级别 34 中引入
public String toString ()

返回对象的字符串表示。通常,toString 方法会返回一个“以文本形式表示”此对象的字符串。结果应该是一个简洁但信息丰富,并且便于阅读的字符串表示。建议所有子类都覆盖此方法。

ObjecttoString 方法会返回一个字符串,其中包含类的名称(相应对象是此类的实例)、字符“@”,以及此对象哈希代码的无符号十六进制表示。也就是说,此方法所返回的字符串等于以下公式的值:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

返回值
String 对象的字符串表示法。