Privacy Sandbox di Android menawarkan program Pratinjau Developer dan Beta. Kami akan memperkenalkan API dan fitur baru di Pratinjau Developer dari waktu ke waktu dan mempromosikan API yang telah distabilkan ke program Beta. Masukan dianjurkan.
Jika Anda baru menggunakan Privacy Sandbox di Android, mulailah dengan Ringkasan Program. Untuk mulai mem-build Privacy Sandbox ke dalam project, siapkan lingkungan pengembangan Anda dan dapatkan Privacy Sandbox di Android pada perangkat pengujian atau emulator Anda.
Rilis saat ini
Privacy Sandbox di Android Beta 1
Privacy Sandbox di Android Beta 1 mewakili ketersediaan pertama Privacy Sandbox API di perangkat publik, dan menambahkan peningkatan pada area yang tercantum di bawah ini.
Umum
- Privacy Sandbox di Android Beta 1 secara fungsional setara dengan Pratinjau Developer 5, dengan beberapa fitur dan batasan tambahan yang tercantum di bawah ini.
- Developer harus menyelesaikan proses pendaftaran untuk menggunakan API terkait iklan (termasuk Topics, FLEDGE, dan Attribution Reporting). Proses pendaftaran memverifikasi identitas developer dan mengumpulkan data khusus developer yang diperlukan oleh API.
- Dengan rilis Privacy Sandbox di Android Beta 1, developer yang telah mendaftarkan dan mengirimkan detail ke daftar yang diizinkan dapat memperoleh kesempatan untuk melakukan pengujian di perangkat fisiknya sendiri. Untuk mengembangkan API stabil dalam rilis, download SDK Ad Services Extensions 4 yang baru.
Topics API
- Android Topics Classifier Colab memungkinkan developer untuk lebih memahami cara kerja model pengklasifikasi.
Attribution Reporting API
- Kunci debug ditambahkan untuk memungkinkan developer menerima laporan yang tidak diubah bersama dengan laporan privasi yang ditingkatkan dari Attribution Reporting API. Kunci debug memberikan peluang untuk mendapatkan visibilitas yang lebih baik dalam cara penyusunan laporan saat melakukan transisi dengan Privacy Sandbox.
Runtime SDK
Batasan berikut diperkirakan akan diperbaiki dalam rilis platform Android utama berikutnya:
- Rendering iklan dalam tampilan yang dapat di-scroll seperti
RecyclerView
saat ini tidak berfungsi dengan baik. Anda mungkin mengalami jank jika elemen diubah ukurannya. Peristiwa scroll sentuh pengguna tidak diteruskan ke runtime dengan benar. - Rendering
WebView
tidak tersedia dalam proses Runtime SDK. - Penyimpanan per SDK tidak tersedia.
- Dukungan untuk
getAdId
API dangetAppSetId
API belum diaktifkan.
Rilis sebelumnya
Pratinjau Developer 6
Privacy Sandbox di Pratinjau Developer Android 6 menambahkan peningkatan pada area berikut:
Umum
- Untuk menyiapkan peluncuran produksi, Pratinjau Developer 6 memperkenalkan tanda untuk menonaktifkan akses Privacy-Preserving API secara default. Untuk tujuan pengujian, aktifkan akses Privacy-Preserving API di Pratinjau Developer dengan menjalankan perintah berikut:
adb shell device_config put adservices global_kill_switch false
AdIdManager
API danAppSetIdManager
API memerlukan layanan Google Play versi 22.36.16 atau yang lebih tinggi.- Di perangkat Android, Anda dapat memastikan versi yang tepat tersebut dengan melihatnya di Settings > Apps > Google Play services.
- Jika Anda perlu mengupdate layanan Google Play ke versi yang tepat, login di emulator atau perangkat pengujian Android dengan Akun Google. Lalu buka Google Play Store > profile icon > Settings > About. Di bagian judul Play Store version, ketuk Update Play Store.
- Langkah ini hanya berlaku untuk pengembangan dan pengujian, namun tidak akan diperlukan setelah Privacy Sandbox diluncurkan kepada pengguna publik.
Topics API
- Menambahkan Preview API untuk beralih antara
getTopics
mendaftar sebagai observer atau tidak. - Perubahan kecil pada kode inisialisasi untuk class
GetTopicsRequest
. - Panduan integrasi topik dirilis.
FLEDGE di Android API
- Jika Anda melakukan pengujian terhadap server sungguhan, opsi mengaktifkan API akan diterapkan sekarang. Ikuti langkah-langkah ini untuk mengonfigurasi perangkat Anda. Langkah-langkah ini tidak diperlukan jika Anda menggunakan penggantian jarak jauh yang ada dalam aplikasi contoh.
- Perubahan yang Dapat Menyebabkan Gangguan:
- Mengganti
Url
dalam parameter denganUri
. Ini berlaku untuk semua FLEDGE API dan JavaScript kustom untuk logika penskoran dan bidding. - Menghapus kolom
owner
dari input Custom Audience API.
- Mengganti
- Kini, audiens kustom yang tidak lengkap akan langsung memenuhi syarat untuk dimuat ulang di latar belakang.
- Batas memori JavaScript kini ditetapkan menjadi 10 MB. Hal ini berlaku untuk logika penskoran dan bidding.
Attribution Reporting API
- Teknologi iklan perlu mendaftar sebelum dapat menggunakan Attribution Reporting API di Pratinjau Developer 6. Lihat Mendaftar ke akun Privacy Sandbox untuk mengetahui informasi selengkapnya.
- Rilis ini memperkenalkan kunci debug sehingga developer dapat menerima laporan yang tidak diubah bersama dengan laporan privasi yang ditingkatkan dari Attribution Reporting API. Kunci debug memberikan peluang untuk mendapatkan visibilitas yang lebih baik dalam cara penyusunan laporan saat melakukan transisi dengan Privacy Sandbox.
Pratinjau Developer 5
Umum
- Sebelum Anda dapat mengakses Privacy Sandbox API di Pratinjau Developer 5, Anda
harus mengaktifkan API dan mengonfigurasi izin khusus API terlebih dahulu.
- Desain untuk Privacy Sandbox di Android memungkinkan pengguna mengontrol apakah API perlindungan privasi dan Runtime SDK aktif di perangkat mereka. Setelan ini ditetapkan sebagai dinonaktifkan secara default di Pratinjau Developer 5. Anda dapat mengaktifkan akses API menggunakan perintah adb.
- Aplikasi pemanggil harus menentukan izin khusus API dalam manifes dan konfigurasi
AdServices
terkait yang mengontrol akses untuk SDK tersemat.
- Aplikasi harus memanggil API perlindungan privasi saat berjalan di latar depan.
AdIdManager
danAppSetIdManager
saat ini tidak beroperasi. Fitur ini akan diaktifkan pada rilis berikutnya.
Runtime SDK
sendData()
tidak akan digunakan lagi dalam versi mendatang.loadSdk()
kini menampilkan objek IBinder untuk memfasilitasi komunikasi 2 arah antara SDK yang mendukung runtime dan aplikasi yang ditentukan di AIDL.- Aplikasi memiliki akses ke peristiwa siklus proses SDK yang mendukung runtime tambahan, seperti saat proses SDK dihentikan.
Attribution Reporting API
Rilis ini memperkenalkan fitur tambahan di Attribution Reporting API, termasuk:
- Dukungan laporan agregasi terenkripsi.
- Dukungan pengukuran lintas aplikasi dan web.
- Header gabungan dalam respons pendaftaran sumber dan pemicu:
- Sumber:
Attribution-Reporting-Register-Aggregatable-Source
sekarang menjadi bagian dariAttribution-Reporting-Register-Source
- Pemicu: Kami telah menggabungkan
Attribution-Reporting-Register-Event-Trigger, Attribution-Reporting-Register-Aggregatable-Trigger-Data
danAttribution-Reporting-Register-Aggregatable-Values
menjadi satu header bernamaAttribution-Reporting-Register-Event-Trigger
Attribution-Reporting-Redirects
masih merupakan header terpisah
- Sumber:
FLEDGE di Android API
Rilis ini mencakup beberapa fitur dan peningkatan baru, serta perubahan yang dapat menyebabkan gangguan:
- Perubahan yang dapat menyebabkan gangguan:
runAdSelection()
diganti namanya menjadiselectAds()
.- Mengganti parameter
AdSelectionConfig.Builder.setAdSelectionSignals()
denganAdSelectionSignals
, yang mewakili objek JSON. - Mengganti penggunaan
String
untuk mewakili pembeli/penjual teknologi iklan dengan objekAdTechIdentifier
. - Menambahkan class
TestCustomAudienceManager
danTestAdSelectionManager
untuk mengganti pengambilan JavaScript jarak jauh. - Pemilik audiens kustom harus berupa nama paket aplikasi panggilan.
- FLEDGE API kini memvalidasi aplikasi pemanggil terhadap serangkaian pembatasan dan
batasan yang dijelaskan dalam panduan developer. Berikut beberapa contoh
yang penting.
selectAds
danreportImpression
kini memiliki batas waktu eksekusi, setelah itu, panggilan akan dihentikan.selectAds
danreportImpression
sekarang memiliki batas memori yang terpakai selama eksekusi JavaScript. API akan melemparkan error jika pemakaian memori melebihi batas yang dikonfigurasi.selectAds
danreportImpression
kini memvalidasi objekAdSelectionConfig
untuk memastikan kolom secara sintaksis valid dan bahwa URL berada di bawah eTLD+1 yang digunakan di kolom penjual.AdServices
kini memvalidasi audiens kustom pada saat pembuatan. Beberapa validasi ini mencakup memastikan waktu habis masa berlaku valid dan menerapkan batas jumlah audiens kustom yang dapat dibuat oleh aplikasi dan total ukuran iklan yang diberikan dalam panggilanjoinCustomAudience
. Validasi juga menerapkan bahwa URI yang disediakan untuk pengambilan sinyal dan logika bidding serta pengambilan latar belakang berada di domain pembeli.
- Metadata audiens kustom diperbarui setiap hari melalui proses pengambilan latar belakang.
- Audiens kustom dihapus saat aplikasi “pemilik” di-uninstal.
- Menambahkan dukungan untuk menentukan Sinyal Penskoran Tepercaya dan Data Bidding Tepercaya selama pemilihan iklan. Lihat contoh kode untuk format respons.
- FLEDGE untuk Android API bergantung pada WebView versi 105.0.5195.58 atau yang lebih tinggi. Lihat informasi penyiapan di panduan developer untuk mengetahui detailnya.
Masalah Umum:
Saat bergabung dengan audiens kustom, platform saat ini tidak langsung melakukan update latar belakang, jika salah satu metadata atau nilai
AdData
kosong ataunull
. Audiens kustom tidak akan memenuhi syarat untuk pemilihan iklan sebelum diupdate satu hari kemudian. Rilis mendatang akan membuat audiens kustom yang tidak lengkap langsung memenuhi syarat untuk melakukan update pengambilan di latar belakang. Batas memori default saat ini untuk eksekusi JavaScript terlalu rendah dan dapat menyebabkan beban kerja normal menimbulkan error pada JavaScript Engine pada perangkat. Eksekusi JavaScript Anda mungkin tiba-tiba berhenti dengan pesan error"Fatal javascript OOM in CALL_AND_RETRY_LAST"
.Anda dapat mengatasi masalah ini secara manual dengan mengonfigurasi ambang batas memori yang sesuai dengan perintah berikut:
adb shell "device_config put adservices fledge_js_isolate_enforce_max_heap_size 10485760"
Iklan audiens kustom yang tidak cocok dengan struktur JSON yang diperlukan akan diupdate selama pengambilan latar belakang.
Topics API
- Memperbarui taksonomi untuk klasifikasi aplikasi seluler.
- Memperbarui proposal desain dan aplikasi contoh dengan meluncurkan UI Setelan untuk melihat Topik yang ditetapkan.
Update Alat
Android Studio Canary memiliki dukungan untuk membuat APK SDK dengan jenis modul baru. Panduan Developer Runtime SDK telah diupdate, dan aplikasi contoh Privacy Sandbox di GitHub mencerminkan update ini.
Pratinjau Developer 4
Tanggal rilis: 14 Juli 2022
Privacy Sandbox di Pratinjau Developer Android 4 menambahkan peningkatan pada area berikut:
Runtime SDK
- Aplikasi kini dapat berkomunikasi dengan SDK berkemampuan runtime (RE-SDK) yang diaktifkan melalui
penambahan
sendData()
. - Penyimpanan lokal kini tersedia dalam proses Runtime SDK.
- SDK juga dapat merender iklan atau konten berbasis video mandiri di Runtime SDK.
- Menambahkan klarifikasi seputar penggunaan refleksi untuk menyertakan kemampuan menggunakan refleksi asalkan konten tidak berada dalam RE-SDK lain.
Attribution Reporting API
Rilis ini memperkenalkan perubahan untuk meningkatkan kejelasan terkait penggunaan Attribution Reporting API, seperti:
- Perubahan dalam format laporan gabungan untuk meningkatkan keterbacaan.
- Memperbarui kolom header untuk fitur Pemfilteran Konversi dan Bidding.
- Menambahkan klarifikasi dalam referensi WebApp API untuk menjelaskan pendaftaran sumber dan pemicu, serta privasi dan izin ketersediaan API.
FLEDGE di Android API
Rilis ini mencakup fitur baru untuk membantu dalam pengujian dan kemampuan debug, serta peningkatan internal:
- Menambahkan dukungan untuk mengganti URL jarak jauh untuk mengambil logika JavaScript selama pengembangan.
- Peningkatan pelaporan error selama pemilihan iklan.
- Audiens kustom yang tidak aktif kini difilter selama pemilihan iklan.
Topics API
Rilis ini mencakup beberapa perubahan signifikan pada Topics API, yang paling penting:
- Jenis nilai yang ditampilkan dari API
getTopics()
telah diubah menjadi jenis objekTopic
baru yang mengenkapsulasi ID bilangan bulat yang sesuai dengan Topik dalam Taksonomi, dan informasi tentang versi pengklasifikasi dan Taksonomi. Anda harus mengupdate aplikasi yang sudah ada menggunakan API ini. - Topics API kini memerlukan izin normal baru.
- Pengantar sistem "Pengklasifikasi di Perangkat" untuk menetapkan Topik secara dinamis berdasarkan informasi aplikasi yang tersedia untuk publik.
Masalah umum
Rilis awal image perangkat ini (revisi 6) tidak dimuat di Android Emulator versi 31.2.10. Image perangkat yang diupdate dan mengatasi masalah tersebut telah tersedia mulai 27 Juli 2022.
Pratinjau Developer 3
Tanggal rilis: 9 Juni 2022
Privacy Sandbox di Pratinjau Developer Android 3 menambahkan fungsi untuk Attribution Reporting API dan FLEDGE di Android.
Attribution Reporting API
Attribution Reporting API meningkatkan privasi pengguna dengan menghapus ketergantungan pada ID pengguna lintas pihak, dan mendukung kasus penggunaan utama untuk atribusi dan pengukuran konversi di seluruh aplikasi.
Rilis ini mencakup resource developer untuk membantu Anda menguji fitur Attribution Reporting API berikut:
- Mendaftarkan sumber atribusi dan memicu peristiwa
- Melatih atribusi dengan prioritas sumber dan pasca-penginstalan
- Menerima laporan peristiwa
- Menerima laporan gabungan yang tidak dienkripsi dalam rilis ini
Aplikasi contoh dan server teknologi iklan referensi disediakan untuk membantu pengujian
Masalah umum:
- Attribution Reporting API belum mengenkripsi laporan gabungan sesuai proposal desain. Untuk tujuan pengujian, payload laporan dikirim dalam format cleartext hingga enkripsi diterapkan.
FLEDGE di Android
FLEDGE di Android memperkenalkan cara baru untuk menampilkan iklan berdasarkan audiens kustom yang ditentukan oleh developer aplikasi dan interaksi dalam aplikasi mereka. Solusi ini menyimpan informasi dan iklan terkait secara lokal, serta menyediakan framework untuk mengatur alur kerja pemilihan iklan.
Rilis ini mencakup resource developer untuk membantu Anda menguji FLEdge berikut di fitur-fitur Android:
- Bergabung atau keluar dari audiens kustom dan amati cara nilai parameter memengaruhi hasil lelang
- Mengambil kode lelang JavaScript dari endpoint jarak jauh
- Mengonfigurasi dan memulai lelang iklan di perangkat
- Menangani pelaporan tayangan
- Aplikasi contoh dan konfigurasi server tiruan disediakan untuk membantu pengujian
Masalah umum:
- Audiens kustom dapat berpartisipasi dalam pemilihan iklan bahkan sebelum "waktu aktivasi".
Pratinjau Developer 2
Tanggal rilis: 17 Mei 2022
Pratinjau Developer 2 menyertakan pratinjau awal
MeasurementManager
attribution reporting API.
- Anda dapat memanggil
registerSource()
danregisterTrigger()
untuk mendaftarkan peristiwa iklan aplikasi dan menerima data pelaporan tingkat peristiwa untuk atribusi aplikasi-ke-aplikasi. Penerapan saat ini menggunakan atribusi kontak terakhir. Laporan dijadwalkan untuk dikirim seperti yang ditentukan oleh periode pelaporan. Lihat referensiMeasurementManager
API untuk mengetahui informasi selengkapnya. Upload laporan yang sebenarnya terjadi di akhir interval waktu tetap, bukan pada waktu persis seperti yang dijadwalkan. Interval upload pelaporan adalah 4 jam secara default, tetapi dapat diganti dengan perintah adb berikut:
adb shell device_config put adservices measurement_main_reporting_job_period_ms <duration in milliseconds>
Aplikasi contoh dan server teknologi iklan referensi untuk API pengujian akan dipublikasikan dalam rilis mendatang.
Fitur
MeasurementManager
attribution reporting API lainnya seperti pelaporan gabungan, atribusi pasca-penginstalan, dan pengalihan akan tersedia dalam rilis selanjutnya.
Pratinjau Developer 1
Tanggal rilis: 28 April 2022
Pratinjau Developer 1 menyertakan pratinjau awal Topics API dan Runtime SDK . Fungsi untuk FLEDGE di Android dan Attribution Reporting API akan tersedia dalam rilis mendatang.
- Topics API
- API
getTopics()
saat ini menampilkan nilai pengujian berdasarkan klasifikasi offline untuk sekumpulan aplikasi terbatas. Klasifikasi di perangkat belum diterapkan. - Anda dapat menggunakan perintah adb untuk mengganti interval epoch dan komputasi epoch pemicu paksa.
- Baca Panduan developer topik untuk mengetahui detailnya.
- API
- SDK Runtime
- Anda dapat mengemas dan membuat SDK yang mendukung runtime (RE SDK) menggunakan elemen
<sdk-library>
baru di file manifes aplikasi SDK. Instal RE SDK di emulator atau perangkat pengujian yang didukung seperti yang biasanya Anda instal aplikasi selama pengembangan. - Anda dapat mengintegrasikan aplikasi dengan RE SDK, memuatnya di SDK Runtime, dan menguji dampak akses terbatas pada kode SDK, yaitu izin, memori, dan komunikasi app-to-SDK. Storage API untuk RE SDK belum diterapkan, dan akan tersedia dalam rilis mendatang.
- SDK dapat merender iklan banner atau konten berbasis
WebView
di SDK Runtime. - Baca panduan developer SDK Runtime untuk informasi selengkapnya.
- Anda dapat mengemas dan membuat SDK yang mendukung runtime (RE SDK) menggunakan elemen
- Pemeriksaan lint Android
- Pemeriksaan lint Android mungkin secara keliru menampilkan peringatan dalam project yang dikompilasi
dengan API level
TiramisuPrivacySandbox
. Misalnya, Anda mungkin melihat pesan peringatan: "Call required API level 33". Anda dapat mengatasi masalah ini untuk sementara dengan menggunakan anotasi@SuppressLint("NewApi")
.
- Pemeriksaan lint Android mungkin secara keliru menampilkan peringatan dalam project yang dikompilasi
dengan API level