API 级别 34 中添加
也在广告服务扩展 4 中添加

广告选择结果

public class AdSelectionOutcome
extends Object

java.lang.Object
   ↳ android.adservices.adselection.AdSelectionOutcome


此类表示 OutcomeReceiver 中的一个字段,它是 AdSelectionManagerAdSelectionManager.selectAds(AdSelectionConfig, Executor, OutcomeReceiver) 的输入。如果 AdSelectionManager#selectAds 调用成功,则系统会填充此字段。

AdSelectionManager.selectAds(android.adservices.adselection.AdSelectionFromOutcomesConfig, java.util.concurrent.Executor, android.os.OutcomeReceiver) 可能会返回空结果。使用 AdSelectionOutcome#hasOutcome() 检查实例是否具有有效结果。当 hasOutcome() 返回 false 时,来自 #getAdSelectionId()AdSelectionOutcome#getRenderUri() 的结果无效,不应使用。

总结

嵌套类

class AdSelectionOutcome.Builder

AdSelectionOutcome 对象的构建器。 

字段

public static final AdSelectionOutcome NO_OUTCOME

表示结果为空的 AdSelectionOutcome。

公共方法

boolean equals(Object o)

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

long getAdSelectionId()

返回标识 AdSelection 的 adSelectionId。

Uri getRenderUri()

返回 AdSelection 返回的 renderUri。

boolean hasOutcome()

返回结果是包含结果还是为空。

int hashCode()

返回对象的哈希代码值。

继承的方法

字段

无结果

public static final AdSelectionOutcome NO_OUTCOME

表示结果为空的 AdSelectionOutcome。

公共方法

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

getAdSelectionId

API 级别 34 中添加
也在广告服务扩展 4 中添加
public long getAdSelectionId ()

返回标识 AdSelection 的 adSelectionId。

开球回攻次数
long 此值不能为 null

getRenderUri

API 级别 34 中添加
也在广告服务扩展 4 中添加
public Uri getRenderUri ()

返回 AdSelection 返回的 renderUri。

开球回攻次数
Uri 此值不能为 null

hasOutcome

public boolean hasOutcome ()

返回结果是包含结果还是为空。不应使用空结果的 render uris

开球回攻次数
boolean

hashCode

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

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

hashCode 的通用协定如下:

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

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

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