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

dapatkan

public static ProtectedSignalsManager get (Context context)

Metode factory untuk membuat instance ProtectedSignalsManager.

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

Return
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 sinyal/sinyal baru ke rangkaian waktu sinyal, menghapus sinyal terlama untuk memberi ruang bagi sinyal baru jika ukuran seri melebihi batas maksimum yang ditentukan. Nilai untuk ini adalah objek JSON dengan kunci adalah string basis 64 yang sesuai dengan kunci yang akan ditambahkan dan nilainya adalah objek dengan dua kolom: "values" dan "maxSignals" . "values" adalah daftar string base 64 yang sesuai dengan nilai sinyal untuk 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. 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 kunci. Nilainya adalah daftar string base 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. "DAFTAR" : Mendaftarkan endpoint encoder jika diberikan untuk pertama kalinya atau menimpa endpoint yang sudah ada dengan endpoint yang baru disediakan. "endpoint" diperlukan untuk tindakan "Register".

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

Kunci hanya dapat dioperasikan dengan 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 dibatasi.

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 memberikan cara mudah untuk mengontrol thread mana yang digunakan. Untuk mengirim peristiwa melalui thread utama aplikasi, Anda dapat menggunakan Context.getMainExecutor(). Jika tidak, berikan Executor yang dikirimkan ke thread yang sesuai.

receiver OutcomeReceiver: Nilai ini tidak boleh null.