ProtectedSignalsManager

public class ProtectedSignalsManager
extends Object

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


ProtectedSignalsManager menyediakan API untuk aplikasi dan SDK iklan agar dapat mengelola sinyal terlindungi.

Ringkasan

Metode publik

static ProtectedSignalsManager get(Context context)

Metode factory untuk membuat instance ProtectedSignalsManager.

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

updateSignals API akan mengambil JSON dari URI yang menjelaskan sinyal yang akan ditambahkan atau dihapus.

Metode turunan

Metode publik

get

public static ProtectedSignalsManager get (Context context)

Metode factory untuk membuat instance ProtectedSignalsManager.

Parameter
context Context: Context yang akan digunakan Nilai ini tidak boleh null.

Hasil
ProtectedSignalsManager Instance ProtectedSignalsManager Nilai ini tidak boleh null.

updateSignals

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

updateSignals API akan mengambil JSON dari URI yang menjelaskan sinyal yang akan ditambahkan atau dihapus. API ini juga memungkinkan pendaftaran endpoint encoder. Endpoint digunakan untuk mendownload logika encoding, yang memungkinkan encoding sinyal.

Kunci tingkat teratas untuk JSON harus sesuai dengan salah satu dari 5 perintah:

"put" - Menambahkan sinyal baru, menimpa sinyal yang ada dengan kunci yang sama. Nilai untuk ini adalah objek JSON dengan kunci berupa string basis 64 yang sesuai dengan kunci yang akan dimasukkan, dan nilainya adalah string basis 64 yang sesuai dengan nilai yang akan dimasukkan.

"append" - Menambahkan satu/beberapa sinyal baru ke deret waktu sinyal agar dapat menghapus sinyal terlama untuk memberi ruang bagi yang baru jika ukuran deret melebihi batas maksimum yang ditentukan. Nilai untuk ini adalah objek JSON dengan kunci berupa string basis 64 yang sesuai dengan kunci yang akan ditambahkan, dan nilainya adalah objek dengan dua kolom: "values" dan "maxSignals" . "values" adalah daftar string basis 64 yang sesuai dengan nilai sinyal yang akan ditambahkan ke deret waktu. "maxSignals" adalah jumlah nilai maksimum yang diizinkan dalam deret waktu ini. Jika jumlah sinyal saat ini yang terkait dengan kunci melebihi maxSignals, sinyal terlama akan dihapus. Perhatikan bahwa Anda dapat menambahkan ke kunci yang ditambahkan oleh put. Namun, menambahkan lebih dari jumlah nilai maksimum akan menyebabkan kegagalan.

"put_if_not_present" - Menambahkan sinyal baru hanya jika tidak ada sinyal dengan kunci yang sama. Nilai untuk ini adalah objek JSON dengan kunci berupa string basis 64 yang sesuai dengan kunci yang akan dimasukkan, dan nilainya adalah string basis 64 yang sesuai dengan nilai yang akan dimasukkan.

"remove" - Menghapus sinyal untuk kunci. Nilainya adalah daftar string basis 64 yang sesuai dengan kunci sinyal yang harus dihapus.

"update_encoder" - Menyediakan tindakan untuk mengupdate endpoint, dan URI yang dapat digunakan untuk mengambil logika encoding. Sub-kunci untuk memberikan tindakan update adalah "action" dan nilai yang saat ini didukung adalah:

  1. "REGISTER" : Mendaftarkan endpoint encoder jika diberikan untuk pertama kalinya atau menimpa yang sudah ada dengan endpoint yang baru diberikan. Penyediaan "endpoint" diperlukan untuk tindakan "REGISTER".

Sub-kunci untuk memberikan endpoint encoder adalah "endpoint", dan nilainya adalah string URI untuk endpoint.

Kunci hanya dapat dioperasikan oleh satu perintah per JSON. Jika dua perintah mencoba beroperasi pada kunci yang sama, metode ini akan melalui IllegalArgumentException

Panggilan ini gagal dengan SecurityException jika

  1. ownerPackageName tidak memanggil nama paket aplikasi dan/atau
  2. pembeli tidak diberi otorisasi untuk menggunakan API.

Panggilan ini gagal dengan IllegalArgumentException jika

  1. JSON yang diambil dari server tidak valid.
  2. URI yang diberikan tidak valid.

Panggilan ini gagal dengan LimitExceededException jika paket panggilan melebihi batas kapasitas yang diizinkan dan di-throttle.

Panggilan ini gagal dengan IllegalStateException jika terjadi error layanan internal.
Memerlukan AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE

Parameter
updateSignalsRequest UpdateSignalsRequest: Nilai ini tidak boleh null.

executor Executor: Nilai ini tidak boleh null. Peristiwa callback dan pemroses dikirim melalui Executor ini, yang menyediakan cara mudah untuk mengontrol thread yang digunakan. Untuk mengirim peristiwa melalui thread utama aplikasi, Anda dapat menggunakan Context.getMainExecutor(). Jika tidak, berikan Executor yang dikirim ke thread yang sesuai.

receiver OutcomeReceiver: Nilai ini tidak boleh null.