API level 34 中添加
也在 Ad Services Extensions 4 中提供

AppSetId

public class AppSetId
继承自 Object

java.lang.Object
   ↳ android.adservices.appsetid.AppSetId


一个唯一的、基于设备、基于开发者帐号的、用户可重置的 ID,用于非创收的广告用例。

表示来自 AppSetIdManager.getAppSetId(Executor, OutcomeReceiver) API 的 AppSetId 及其作用域。该 ID 的作用域可以是按应用或按与用户关联的开发者帐号。AppSetId 用于给定设备上的分析、垃圾邮件检测、频次上限控制和欺诈防范等用例,在这些用例中可能需要关联某个组织拥有的应用集中的使用情况或操作。

摘要

常量

int SCOPE_APP

appSetId 的作用域是按应用。

int SCOPE_DEVELOPER

appSetId 的作用域是按应用商店上的开发者帐号。

公共构造函数

AppSetId(String appSetId, int appSetIdScope)

创建 AppSetId 的实例

公共方法

boolean equals(Object o)

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

String getId()

检索 appSetId。

int getScope()

检索 appSetId 的作用域。

int hashCode()

返回对象的哈希代码值。

继承的方法

常量

SCOPE_APP

API level 34 中添加
也在 Ad Services Extensions 4 中提供
public static final int SCOPE_APP

appSetId 的作用域是按应用。设备上的所有应用都将具有不同的 appSetId。

常量值:1 (0x00000001)

SCOPE_DEVELOPER

API level 34 中添加
也在 Ad Services Extensions 4 中提供
public static final int SCOPE_DEVELOPER

appSetId 的作用域是按应用商店上的开发者帐号。来自同一开发者在设备上的所有应用都将具有相同的开发者作用域 appSetId。

常量值:2 (0x00000002)

公共构造函数

AppSetId

API level 34 中添加
也在 Ad Services Extensions 4 中提供
public AppSetId (String appSetId, 
                int appSetIdScope)

创建 AppSetId 的实例

参数
appSetId String:由提供程序服务生成。此值不能为 null

appSetIdScope int:appSetId 的作用域。值为 SCOPE_APPSCOPE_DEVELOPER

公共方法

equals

API level 34 中添加
public boolean equals (Object o)

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

equals 方法对非 null 对象引用实现了等价关系

  • 它是 自反的:对于任何非 null 引用值 xx.equals(x) 应返回 true
  • 它是 对称的:对于任何非 null 引用值 xyx.equals(y) 应仅当 y.equals(x) 返回 true 时才返回 true
  • 它是 传递的:对于任何非 null 引用值 xyz,如果 x.equals(y) 返回 true 并且 y.equals(z) 返回 true,则 x.equals(z) 应返回 true
  • 它是 一致的:对于任何非 null 引用值 xy,多次调用 x.equals(y) 将始终返回 true 或始终返回 false,前提是用于对象的 equals 比较中的信息未被修改。
  • 对于任何非 null 引用值 xx.equals(null) 应返回 false

Objectequals 方法实现了对象上最严格可能的等价关系;也就是说,对于任何非 null 引用值 xy,当且仅当 xy 引用同一对象(x == y 的值为 true)时,此方法才返回 true

请注意,通常在重写此方法时必须重写 hashCode 方法,以维护 hashCode 方法的一般契约,该契约规定相等的对象必须具有相等的哈希代码。

参数
o Object:用于比较的引用对象。

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

getId

API level 34 中添加
也在 Ad Services Extensions 4 中提供
public String getId ()

检索 appSetId。此 API 始终返回一个非空 appSetId。

返回
String 此值不能为 null

getScope

API level 34 中添加
也在 Ad Services Extensions 4 中提供
public int getScope ()

检索 appSetId 的作用域。

返回
int 值为 SCOPE_APPSCOPE_DEVELOPER

hashCode

API level 34 中添加
public int hashCode ()

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

hashCode 的一般契约是

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

在合理可行的情况下,类 Object 定义的 hashCode 方法确实为不同的对象返回不同的整数。(hashCode 可能实现为对象在某个时刻的内存地址的某个函数,也可能不是。)

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