ProtectedSignalsManager
public
class
ProtectedSignalsManager
extends Object
java.lang.Object | |
↳ | android.adservices.signals.ProtectedSignalsManager |
ProtectedSignalsManager มี API สำหรับแอปและ Ad-SDK เพื่อจัดการสัญญาณที่มีการป้องกัน
สรุป
วิธีการสาธารณะ | |
---|---|
static
ProtectedSignalsManager
|
get(Context context)
วิธีการของ Factory สำหรับการสร้างอินสแตนซ์ของ ProtectedSignalsManager |
void
|
updateSignals(UpdateSignalsRequest updateSignalsRequest, Executor executor, OutcomeReceiver<Object, Exception> receiver)
updateSignals API จะดึงข้อมูล JSON จาก URI ที่อธิบายสัญญาณที่จะเพิ่มหรือนำออก |
วิธีการที่รับมา | |
---|---|
วิธีการสาธารณะ
รับ
public static ProtectedSignalsManager get (Context context)
วิธีการของ Factory สำหรับการสร้างอินสแตนซ์ของ ProtectedSignalsManager
พารามิเตอร์ | |
---|---|
context |
Context : Context ที่จะใช้
ค่านี้ต้องไม่ใช่ null |
คิกรีเทิร์น | |
---|---|
ProtectedSignalsManager |
อินสแตนซ์ ProtectedSignalsManager
ค่านี้ต้องเป็น null |
updateSignals
public void updateSignals (UpdateSignalsRequest updateSignalsRequest, Executor executor, OutcomeReceiver<Object, Exception> receiver)
UpdateSignals API จะดึง JSON จาก URI ที่อธิบายสัญญาณที่ควรเพิ่มหรือนำออก นอกจากนี้ API นี้ยังอนุญาตให้ลงทะเบียนปลายทางของโปรแกรมเปลี่ยนไฟล์ด้วย ปลายทางใช้เพื่อดาวน์โหลดตรรกะการเข้ารหัส ซึ่งจะเปิดใช้การเข้ารหัสสัญญาณ
คีย์ระดับบนสุดสำหรับ JSON ต้องสอดคล้องกับคำสั่ง 1 ใน 5 ข้อต่อไปนี้
"put" - เพิ่มสัญญาณใหม่ โดยเขียนทับสัญญาณที่มีอยู่ซึ่งมีคีย์เดียวกัน ค่าสำหรับการดำเนินการนี้คือออบเจ็กต์ JSON โดยที่คีย์คือสตริงฐาน 64 ที่สอดคล้องกับคีย์ที่จะใส่ และค่าคือสตริงฐาน 64 ที่สอดคล้องกับค่าที่จะใส่
"append" - ต่อท้ายสัญญาณใหม่/สัญญาณลงในอนุกรมเวลาของสัญญาณ โดยนําสัญญาณที่เก่าที่สุดออกเพื่อให้มีพื้นที่ว่างสําหรับสัญญาณใหม่ หากขนาดของอนุกรมเกินค่าสูงสุดที่ระบุ ค่าสำหรับนี้คือออบเจ็กต์ JSON ที่คีย์คือสตริงฐาน 64 ที่สอดคล้องกับคีย์ที่จะเพิ่มต่อท้าย และค่าคือออบเจ็กต์ที่มี 2 ช่อง ได้แก่ "values" และ "maxSignals" "values" คือรายการสตริงฐาน 64 ที่สอดคล้องกับค่าสัญญาณที่จะเพิ่มต่อท้ายอนุกรมเวลา "maxSignals" คือจำนวนค่าสูงสุดที่อนุญาตในอนุกรมเวลานี้ หากจำนวนสัญญาณปัจจุบันที่เชื่อมโยงกับคีย์มากกว่า maxSignals ระบบจะนำสัญญาณที่เก่าที่สุดออก โปรดทราบว่าคุณสามารถเพิ่มคีย์ที่เพิ่มด้วยคำว่า "put" ได้ แต่การต่อท้ายค่าเกินจำนวนสูงสุดจะไม่ทำให้การดำเนินการล้มเหลว
"put_if_not_present" - เพิ่มสัญญาณใหม่เฉพาะในกรณีที่ไม่มีสัญญาณที่มีคีย์เดียวกันอยู่แล้ว ค่าสำหรับนี้คือออบเจ็กต์ JSON ที่คีย์เป็นสตริงฐาน 64 ที่สอดคล้องกับคีย์ที่จะใส่ และค่าเป็นสตริงฐาน 64 ที่สอดคล้องกับค่าที่จะใส่
"remove" - นำสัญญาณของคีย์ออก ค่าของนี้คือรายการสตริง Base64 ที่สอดคล้องกับคีย์ของสัญญาณที่ควรลบ
"update_encoder" - ระบุการดำเนินการเพื่ออัปเดตปลายทางและ URI ที่ใช้เพื่อเรียกข้อมูลตรรกะการเข้ารหัสได้ คีย์ย่อยสำหรับการระบุการดำเนินการอัปเดตคือ "action" และค่าที่รองรับในปัจจุบันมีดังนี้
- "REGISTER" : ลงทะเบียนปลายทางของโปรแกรมเปลี่ยนไฟล์หากระบุเป็นครั้งแรก หรือเขียนทับปลายทางที่มีอยู่ด้วยปลายทางที่ระบุใหม่ ต้องระบุ "ปลายทาง" สำหรับการดำเนินการ "ลงทะเบียน"
คีย์ย่อยสำหรับการระบุปลายทางของโปรแกรมเปลี่ยนไฟล์คือ "ปลายทาง" และค่าคือสตริง URI สำหรับปลายทาง
คีย์จะใช้งานได้ด้วยคำสั่ง 1 รายการต่อ JSON เท่านั้น หากคําสั่ง 2 รายการพยายามทํางานกับคีย์เดียวกัน วิธีการนี้จะผ่าน IllegalArgumentException
การเรียกใช้นี้จะดำเนินการไม่สำเร็จพร้อม SecurityException
ในกรณีต่อไปนี้
ownerPackageName
ไม่ได้เรียกใช้ชื่อแพ็กเกจของแอปและ/หรือ- ผู้ซื้อไม่ได้รับอนุญาตให้ใช้ API
การเรียกใช้นี้จะดำเนินการไม่สำเร็จพร้อม IllegalArgumentException
ในกรณีต่อไปนี้
- JSON ที่ดึงมาจากเซิร์ฟเวอร์ไม่ถูกต้อง
- URI ที่ระบุไม่ถูกต้อง
การเรียกนี้ไม่สำเร็จพร้อม LimitExceededException
หากแพ็กเกจการโทรมีอัตราการโทรเกินขีดจำกัดที่อนุญาตและถูกจำกัด
การเรียกใช้นี้จะดำเนินการไม่สำเร็จพร้อม IllegalStateException
หากพบข้อผิดพลาดภายในบริการ
ต้องมี AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
พารามิเตอร์ | |
---|---|
updateSignalsRequest |
UpdateSignalsRequest : ค่านี้ต้องไม่เป็น null |
executor |
Executor : ค่านี้ต้องไม่ใช่ null
ระบบจะส่งเหตุการณ์ Callback และ Listener ผ่าน Executor นี้ ซึ่งช่วยให้ควบคุมได้ง่ายว่าจะใช้เธรดใด หากต้องการส่งเหตุการณ์ผ่านเทรดหลักของแอปพลิเคชัน คุณจะใช้ Context.getMainExecutor() ได้
หรือระบุ Executor ที่ส่งไปยังเธรดที่เหมาะสม |
receiver |
OutcomeReceiver : ค่านี้ต้องไม่ใช่ null |