ProtectedSignalsManager
  public
  
  
  
  class
  ProtectedSignalsManager
  
    extends Object
  
  
  
  
  
  
| java.lang.Object | |
| ↳ | android.adservices.signals.ProtectedSignalsManager | 
ProtectedSignalsManager 为应用和广告 SDK 提供用于管理其受保护信号的 API。
摘要
| 公共方法 | |
|---|---|
| 
        
        
        static
        
        
        ProtectedSignalsManager | 
      get(Context context)
      用于创建 ProtectedSignalsManager 实例的工厂方法。 | 
| 
        
        
        
        
        
        void | 
      updateSignals(UpdateSignalsRequest updateSignalsRequest, Executor executor, OutcomeReceiver<Object, Exception> receiver)
      updateSignals API 将从 URI 中检索 JSON,该 URI 描述了要添加的信号 或移除。 | 
| 继承的方法 | |
|---|---|
公共方法
get
public static ProtectedSignalsManager get (Context context)
用于创建 ProtectedSignalsManager 实例的工厂方法。
| 参数 | |
|---|---|
| context | Context:要使用的Context此值不能为null。 | 
| 返回 | |
|---|---|
| ProtectedSignalsManager | ProtectedSignalsManager实例
 
 此值不能为null。 | 
更新信号
public void updateSignals (UpdateSignalsRequest updateSignalsRequest, Executor executor, OutcomeReceiver<Object, Exception> receiver)
updateSignals API 将从 URI 中检索 JSON,该 URI 描述了要添加的信号 或移除。此 API 还允许注册编码器端点。端点用于 下载编码逻辑,用于对信号进行编码。
JSON 的顶级键必须对应于 5 个命令之一:
“放置”- 添加新信号,使用同一键覆盖所有现有信号。值 是一个 JSON 对象,其中键是与要放入的键对应的 base 64 字符串 和 值是与要放入的值相对应的 base 64 字符串。
“附加”- 将新信号附加到信号的时间序列,移除最早的信号 信号,以便在数据系列的大小超过指定上限时为新数据腾出空间。 此元素的值是一个 JSON 对象,其中键是与 键和值是包含两个字段的对象:“values”和“maxSignals”,了解所有最新动态。 “values”是与要附加到时间的信号值相对应的 base 64 字符串列表 系列视频“maxSignals”是此时间序列中允许的值的数量上限。如果 与键关联的信号的当前数量超过了 maxSignals 最早的信号 将被移除。请注意,您可以附加到通过 put 添加的键。附加超过 最大数量的值会导致失败。
“put_if_not_present”- 仅当不存在与 相同的键。此元素的值是一个 JSON 对象,其中键是 base 64 字符串 对应的键,且值是与 输入的值。
“移除”- 移除键的信号。此元素的值是一个 base 64 字符串列表 与应删除的信号的键相对应。
“update_encoder”- 提供更新端点的操作,以及可用于 检索编码逻辑。用于提供更新操作的子键是“action”和 目前支持的值有:
- “REGISTER”:注册编码器端点(如果首次提供),或 使用新提供的端点覆盖现有端点。提供“端点” 为“REGISTER”操作。
用于提供编码器端点的子键是“endpoint”值是 URI 该端点的 URI 字符串。
每个 JSON 只能通过一个命令对键进行操作。如果两个命令尝试
 同一个键,此方法将通过 IllegalArgumentException
 
如果出现以下情况,此调用将失败并显示 SecurityException
 
- ownerPackageName未调用应用的软件包名称,并且/或者
- 买方无权使用该 API。
如果出现以下情况,此调用将失败并显示 IllegalArgumentException
 
- 从服务器检索到的 JSON 无效。
- 提供的 URI 无效。
如果调用的软件包超出了LimitExceededException
 允许的速率限制并被节流。
 
如果发生内部服务错误,此调用将失败并显示 IllegalStateException
 错误。
 
 
 需要 AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
| 参数 | |
|---|---|
| updateSignalsRequest | UpdateSignalsRequest:此值不能为null。 | 
| executor | Executor:此值不能为null。
 
 回调和监听器事件通过此Executor,可让您轻松控制要
 。要通过
 可以使用Context.getMainExecutor()。
 否则,请提供分派给相应线程的Executor。 | 
| receiver | OutcomeReceiver:此值不能为null。 | 
