ProtectedSignalsManager

public class ProtectedSignalsManager
extends Object

java.lang.Object
   ↳ android.adservices.signals.ProtectedSignalsManager


ProtectedSignalsManager cung cấp API cho các ứng dụng và SDK quảng cáo để quản lý tín hiệu được bảo vệ.

Tóm tắt

Phương thức công khai

static ProtectedSignalsManager get(Context context)

Phương thức ban đầu để tạo một thực thể của ProtectedSignalsManager.

void updateSignals(UpdateSignalsRequest updateSignalsRequest, Executor executor, OutcomeReceiver<ObjectException> receiver)

API updateSignals sẽ truy xuất một JSON từ URI mô tả tín hiệu cần thêm hoặc xoá.

Các phương thức kế thừa

Phương thức công khai

get

public static ProtectedSignalsManager get (Context context)

Phương thức nhà máy để tạo một thực thể của ProtectedSignalsManager.

Tham số
context Context: Context để sử dụng Giá trị này không được là null.

Giá trị trả về
ProtectedSignalsManager Một thực thể ProtectedSignalsManager Giá trị này không được là null.

updateSignals

public void updateSignals (UpdateSignalsRequest updateSignalsRequest, 
                Executor executor, 
                OutcomeReceiver<ObjectException> receiver)

API updateSignals sẽ truy xuất một JSON từ URI mô tả tín hiệu cần thêm hoặc xoá. API này cũng cho phép đăng ký điểm cuối bộ mã hoá. Điểm cuối này được dùng để tải logic mã hoá xuống, cho phép mã hoá các tín hiệu.

Các khoá cấp cao nhất cho JSON phải tương ứng với một trong 5 lệnh:

"put" – Thêm tín hiệu mới, ghi đè mọi tín hiệu hiện có bằng cùng một khoá. Giá trị cho tín hiệu này là một đối tượng JSON, trong đó các khoá là các chuỗi cơ sở 64 tương ứng với khoá cần đặt và các giá trị là chuỗi cơ sở 64 tương ứng với giá trị cần đặt.

"append" (thêm vào) – Thêm một tín hiệu/các tín hiệu mới vào một chuỗi tín hiệu thời gian, xoá các tín hiệu cũ nhất để tạo chỗ trống cho các tín hiệu mới nếu kích thước của chuỗi vượt quá mức tối đa đã cho. Giá trị cho tín hiệu này là đối tượng JSON, trong đó khoá là chuỗi cơ sở 64 tương ứng với khoá cần nối và giá trị là các đối tượng có 2 trường: "values" và "maxSignals" . "values" là danh sách gồm các chuỗi cơ sở 64 tương ứng với các giá trị tín hiệu cần thêm vào chuỗi thời gian. "maxSignals" là số lượng giá trị tối đa được phép trong chuỗi thời gian này. Nếu số lượng tín hiệu hiện tại được liên kết với khoá vượt quá maxSignals, thì các tín hiệu cũ nhất sẽ bị xoá. Xin lưu ý rằng bạn có thể nối vào khoá được thêm bằng cách đặt. Lưu ý rằng việc nối nhiều hơn số lượng giá trị tối đa sẽ gây ra lỗi.

"put_if_not_present" – Chỉ thêm một tín hiệu mới khi không có tín hiệu nào có cùng khoá. Giá trị cho tín hiệu này là một đối tượng JSON, trong đó các khoá là các chuỗi cơ sở 64 tương ứng với khoá cần đặt và các giá trị là chuỗi cơ sở 64 tương ứng với giá trị cần đặt.

"remove" (xoá) – Xoá tín hiệu của khoá. Giá trị của tín hiệu này là danh sách gồm các chuỗi cơ sở 64 tương ứng với các khoá của tín hiệu cần xoá.

"update_encoder" – Cung cấp một thao tác để cập nhật điểm cuối và URI có thể dùng để truy xuất logic mã hoá. Khoá phụ để cung cấp hành động cập nhật là "action" và các giá trị hiện được hỗ trợ là:

  1. "REGISTER" (ĐĂNG KÝ): Đăng ký điểm cuối bộ mã hoá nếu được cung cấp lần đầu tiên hoặc ghi đè điểm cuối hiện có bằng điểm cuối mới được cung cấp. Bạn phải cung cấp "điểm cuối" cho hành động "REGISTER".

Khoá phụ để cung cấp điểm cuối bộ mã hoá là "endpoint" (điểm cuối) và giá trị là chuỗi URI cho điểm cuối.

Chỉ có thể thao tác trên khoá bằng một lệnh trên mỗi JSON. Nếu hai lệnh cố gắng hoạt động trên cùng một khoá, phương thức này sẽ thông qua IllegalArgumentException

Lệnh gọi này không thành công với SecurityException nếu

  1. ownerPackageName không gọi tên gói của ứng dụng và/hoặc
  2. bên mua không được phép sử dụng API.

Lệnh gọi này không thành công với IllegalArgumentException nếu

  1. JSON được truy xuất từ máy chủ không hợp lệ.
  2. URI đã cung cấp không hợp lệ.

Lệnh gọi này sẽ không thành công với LimitExceededException nếu gói gọi vượt quá giới hạn tốc độ được cho phép và bị điều tiết.

Lệnh gọi này sẽ không thành công với IllegalStateException nếu gặp lỗi dịch vụ nội bộ.
Cần có AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

Tham số
updateSignalsRequest UpdateSignalsRequest: Giá trị này không được là null.

executor Executor: Giá trị này không được là null. Các sự kiện gọi lại và trình nghe được gửi đi thông qua Executor này, giúp bạn dễ dàng kiểm soát chuỗi nào được sử dụng. Để gửi các sự kiện thông qua luồng chính của ứng dụng, bạn có thể sử dụng Context.getMainExecutor(). Nếu không, hãy cung cấp một Executor điều phối đến một luồng thích hợp.

receiver OutcomeReceiver: Giá trị này không được là null.