Dokumen ini memberikan panduan memilih ID yang sesuai untuk aplikasi Anda, berdasarkan kasus penggunaan.
Untuk pembahasan umum tentang izin Android, lihat Ringkasan izin. Untuk praktik terbaik khusus mengenai penggunaan izin Android, lihat Praktik terbaik untuk izin aplikasi.
Praktik terbaik untuk penggunaan ID Android
Untuk melindungi privasi pengguna, gunakan ID paling ketat yang memenuhi kasus penggunaan aplikasi Anda. Secara khusus, ikuti praktik terbaik berikut:
- Pilih ID yang dapat direset oleh pengguna jika memungkinkan. Aplikasi Anda dapat mencapai sebagian besar kasus penggunaannya meskipun menggunakan ID selain ID hardware yang tidak dapat direset.
Hindari menggunakan ID hardware. Dalam sebagian besar kasus penggunaan, Anda dapat menghindari penggunaan ID hardware, seperti Identitas Perangkat Seluler International (IMEI), tanpa membatasi fungsi yang diperlukan.
Android 10 (API level 29) menambahkan batasan untuk ID yang tidak dapat direset, yang mencakup IMEI dan nomor seri. Aplikasi Anda harus berupa perangkat atau aplikasi pemilik profil, memiliki izin operator khusus, atau memiliki izin hak istimewa
READ_PRIVILEGED_PHONE_STATE
untuk mengakses ID ini.Hanya gunakan ID Iklan untuk profiling pengguna atau kasus penggunaan iklan. Saat menggunakan ID Iklan, selalu hormati pilihan pengguna terkait pelacakan iklan. Jika Anda harus menghubungkan ID iklan ke informasi identitas pribadi, lakukan hanya dengan izin eksplisit dari pengguna.
Jangan mengaitkan reset ID Iklan.
Gunakan ID penginstalan Firebase (FID) atau GUID yang disimpan secara pribadi jika memungkinkan untuk semua kasus penggunaan lainnya, kecuali pencegahan penipuan pembayaran dan telepon. Untuk sebagian besar kasus penggunaan non-iklan, FID atau GUID seharusnya cukup memadai.
Gunakan API yang sesuai pada kasus penggunaan Anda untuk meminimalkan risiko privasi. Gunakan DRM API untuk perlindungan konten bernilai tinggi dan Play Integrity API untuk perlindungan penyalahgunaan. Play Integrity API adalah cara termudah untuk menentukan apakah perangkat tersebut asli tanpa menyebabkan risiko privasi.
Bagian selanjutnya dari panduan ini menguraikan aturan tersebut dalam konteks mengembangkan aplikasi Android.
Menggunakan ID iklan
ID Iklan adalah ID yang dapat di-reset oleh pengguna dan sesuai untuk kasus penggunaan iklan. Namun, ada beberapa poin utama yang perlu diingat saat Anda menggunakan ID ini:
Selalu hormati maksud pengguna dalam mereset ID iklan. Jangan mengaitkan suatu tindakan reset pengguna dengan menggunakan ID lain atau sidik jari untuk menautkan beberapa ID Iklan yang digunakan berurutan tanpa persetujuan pengguna. Kebijakan Konten Developer Google Play menyatakan berikut ini:
"...saat mereset, ID iklan baru tidak boleh terkait dengan ID iklan sebelumnya atau data yang berasal dari ID iklan sebelumnya tanpa persetujuan eksplisit dari pengguna."
Selalu hormati preferensi Iklan yang Dipersonalisasi terkait. ID Iklan dapat dikonfigurasi sehingga pengguna dapat membatasi jumlah pelacakan yang terkait dengan ID tersebut. Selalu gunakan metode AdvertisingIdClient.Info.isLimitAdTrackingEnabled()
untuk memastikan Anda tidak melanggar keinginan pengguna. Kebijakan Konten Developer Google Play menyatakan berikut ini:
"...Anda harus mematuhi setelan 'Memilih tidak ikut periklanan menurut minat' atau 'Memilih tidak ikut Personalisasi Iklan' pengguna. Jika pengguna telah mengaktifkan setelan ini, Anda tidak boleh menggunakan ID iklan tersebut untuk membuat profil pengguna demi tujuan periklanan, atau untuk menargetkan pengguna dengan periklanan yang dipersonalisasi. Aktivitas yang diizinkan mencakup pengiklanan kontekstual, pembatasan frekuensi, pelacakan konversi, pelaporan dan keamanan, serta deteksi penipuan".
Waspadalah terhadap segala kebijakan keamanan atau privasi terkait SDK yang Anda gunakan dan terkait dengan penggunaan ID iklan.
Misalnya, jika Anda meneruskan true
ke dalam metode enableAdvertisingIdCollection()
dari SDK Google Analytics, pastikan untuk meninjau dan mematuhi semua kebijakan SDK Analytics yang berlaku.
Perlu diketahui juga, bahwa Kebijakan Konten Developer Google Play mengharuskan ID Iklan "tidak boleh terhubung dengan informasi identitas pribadi atau terkait dengan ID perangkat persisten (misalnya: SSAID, alamat MAC, IMEI, dll.,)."
Misalnya, anggap saja Anda ingin mengumpulkan informasi untuk mengisi tabel database dengan kolom berikut:
TABLE-01 | |||
timestamp |
ad_id |
account_id |
clickid |
TABLE-02 | |||
account_id |
name |
dob |
country |
Dalam contoh ini, kolom ad_id
dapat digabungkan dengan PII melalui kolom account_id
di kedua tabel, yang merupakan pelanggaran terhadap Kebijakan Konten Developer Google Play, jika Anda tidak mendapatkan izin eksplisit dari pengguna.
Perlu diingat bahwa hubungan antara ID Iklan dan PII tidak selalu eksplisit seperti ini. Dimungkinkan untuk memiliki “ID-semu” yang terlihat pada tabel yang menyertakan PII dan ID Iklan, dan ini juga menyebabkan masalah. Misalnya, anggap saja kita mengubah TABLE-01 dan TABLE-02 sebagai berikut:
TABLE-01 | ||||
timestamp |
ad_id |
clickid |
dev_model |
|
TABLE-02 | ||||
timestamp |
demo |
account_id |
dev_model |
name |
Dalam kasus ini, dengan peristiwa klik yang cukup jarang, masih mungkin untuk menggabungkan antara TABLE-01 ID Iklan dan PII yang ada di TABLE-02 menggunakan stempel waktu peristiwa dan model perangkat.
Meski sering kali sulit untuk menjamin bahwa tidak ada ID-semu dalam set data, Anda dapat mencegah risiko penggabungan yang paling jelas dengan menggeneralisasi data yang unik jika memungkinkan. Dalam contoh sebelumnya, ini berarti mengurangi akurasi stempel waktu sehingga beberapa perangkat dengan model yang sama muncul untuk setiap stempel waktu.
Solusi lain mencakup berikut ini:
Tidak mendesain tabel yang secara eksplisit menautkan PII dengan ID Iklan. Pada contoh pertama di atas, ini berarti tidak menyertakan kolom
account_id
pada TABLE-01.Memisahkan dan memantau daftar kontrol akses untuk pengguna atau peran yang memiliki akses ke data yang menyertakan ID Iklan dan PII. Dengan secara ketat mengontrol dan mengaudit kemampuan untuk mengakses kedua sumber secara bersamaan (misalnya, dengan melakukan penggabungan tabel satu ke tabel lainnya), Anda mengurangi risiko menghubungkan ID Iklan dengan PII. Secara umum, mengontrol akses artinya melakukan hal berikut:
- Menjaga agar daftar kontrol akses (ACL) untuk data yang menyertakan ID Iklan dan PII tetap terpisah untuk meminimalkan jumlah individu atau peran yang ada di kedua ACL.
- Mengimplementasikan logging akses dan audit untuk mendeteksi dan mengelola setiap pengecualian untuk aturan ini.
Untuk mengetahui informasi selengkapnya tentang menggunakan ID Iklan secara bertanggung jawab, lihat referensi API AdvertisingIdClient
.
Menggunakan FID dan GUID
Solusi termudah untuk mengidentifikasi instance aplikasi yang berjalan di perangkat adalah dengan menggunakan ID penginstalan Firebase (FID), dan ini merupakan solusi yang direkomendasikan dalam sebagian besar kasus penggunaan non-iklan. Hanya instance aplikasi yang telah disediakan yang dapat mengakses ID ini, dan itu (relatif) mudah untuk direset karena hanya bertahan selama aplikasi diinstal.
Hasilnya, FID memberikan properti privasi yang lebih baik dibandingkan dengan
ID hardware lingkup perangkat yang tidak dapat direset. Untuk informasi selengkapnya, lihat referensi API
firebase.installations
.
Jika FID kurang praktis, Anda juga dapat menggunakan ID unik global (GUID) kustom untuk mengidentifikasi instance aplikasi secara unik. Cara termudah untuk melakukannya adalah dengan membuat GUID sendiri menggunakan kode berikut:
Kotlin
var uniqueID = UUID.randomUUID().toString()
Java
String uniqueID = UUID.randomUUID().toString();
Karena ID bersifat unik secara global, ID juga dapat digunakan untuk mengidentifikasi instance aplikasi tertentu. Untuk menghindari masalah yang terkait dengan menghubungkan ID ke berbagai aplikasi, simpan GUID di penyimpanan internal, bukan penyimpanan eksternal (bersama). Untuk informasi selengkapnya, lihat halaman Ringkasan penyimpanan data dan file.
Jangan menggunakan alamat MAC
Alamat MAC bersifat unik secara global, tidak dapat di-reset pengguna, dan tidak dapat dihapus meski dilakukan reset ke setelan pabrik. Karena alasan ini, untuk melindungi privasi pengguna, pada Android versi 6 dan yang lebih tinggi, akses ke alamat MAC dibatasi untuk aplikasi sistem. Aplikasi pihak ketiga tidak dapat mengaksesnya.
Perubahan ketersediaan alamat MAC di Android 11
Pada aplikasi yang menargetkan Android 11 dan yang lebih tinggi, pengacakan MAC untuk jaringan Passpoint dilakukan per profil Passpoint, yang menghasilkan alamat MAC unik berdasarkan kolom berikut:
- Nama domain yang sepenuhnya memenuhi syarat (FQDN)
- Realm
- Kredensial, berdasarkan kredensial yang digunakan dalam profil Passpoint:
- Kredensial pengguna: nama pengguna
- Kredensial sertifikat: sertifikat dan jenis sertifikat
- Kredensial SIM: Jenis EAP dan IMSI
Selain itu, aplikasi tanpa hak istimewa tidak dapat mengakses alamat MAC perangkat; hanya
antarmuka jaringan dengan alamat IP yang terlihat. Hal ini memengaruhi metode
getifaddrs()
dan
NetworkInterface.getHardwareAddress()
, serta pengiriman pesan Netlink RTM_GETLINK
.
Berikut adalah daftar tentang bagaimana aplikasi terpengaruh oleh perubahan ini:
NetworkInterface.getHardwareAddress()
menampilkan null untuk setiap antarmuka.- Aplikasi tidak dapat menggunakan fungsi
bind()
pada soketNETLINK_ROUTE
. - Perintah
ip
tidak menampilkan informasi tentang antarmuka. - Aplikasi tidak dapat mengirim pesan
RTM_GETLINK
.
Perlu diperhatikan bahwa sebagian besar developer harus menggunakan API level
ConnectivityManager
yang lebih tinggi, bukan
API level yang lebih rendah seperti
NetworkInterface
,
getifaddrs()
,
atau soket Netlink. Misalnya, aplikasi yang memerlukan informasi terbaru tentang
rute saat ini dapat mendapatkan informasi ini dengan memproses perubahan jaringan menggunakan ConnectivityManager.registerNetworkCallback()
dan memanggil
LinkProperties.getRoutes()
terkait jaringan.
Karakteristik ID
OS Android menyediakan sejumlah ID dengan karakteristik perilaku berbeda. ID yang harus Anda gunakan bergantung pada cara karakteristik berikut berfungsi dengan kasus penggunaan Anda. Namun, karakteristik tersebut juga disertai dengan implikasi privasi, jadi, penting untuk memahami cara karakteristik tersebut berinteraksi satu sama lain.
Cakupan
Cakupan ID menjelaskan sistem mana yang dapat mengakses ID. Cakupan ID Android umumnya dibagi menjadi tiga kategori:
- Satu aplikasi: Ini adalah ID internal aplikasi dan tidak dapat diakses oleh aplikasi lain.
- Grup aplikasi: ID dapat diakses oleh grup aplikasi terkait yang telah ditentukan.
- Perangkat: ID dapat diakses oleh semua aplikasi yang diinstal di perangkat.
Semakin luas cakupan yang diberikan ke ID, semakin besar risiko untuk digunakan demi tujuan pelacakan. Sebaliknya, jika ID hanya dapat diakses oleh instance satu aplikasi, ID tidak dapat digunakan untuk melacak perangkat di berbagai transaksi dalam aplikasi yang berbeda.
Kemampuan reset dan persistensi
Kemampuan reset dan persistensi menentukan masa aktif ID dan menjelaskan cara ID dapat di-reset. Pemicu reset umum mencakup: reset dalam aplikasi, reset melalui Setelan Sistem, reset saat peluncuran, dan reset saat penginstalan. ID Android dapat memiliki masa aktif yang berbeda, tetapi masa aktifnya biasanya terkait dengan cara ID di-reset.
- Khusus sesi: ID baru digunakan setiap kali pengguna memulai ulang aplikasi.
- Reset saat instal: ID baru digunakan setiap kali pengguna meng-uninstal dan menginstal ulang aplikasi.
- Reset saat FDR: ID baru digunakan setiap kali pengguna melakukan reset ke setelan pabrik.
- Persisten saat FDR: ID tidak dapat dihapus meski telah dilakukan reset ke setelan pabrik.
Kemampuan reset menyebabkan pengguna dapat membuat ID baru yang tidak terkait dengan informasi profil yang sudah ada. Semakin lama dan semakin andal suatu ID bertahan, seperti ID yang bertahan setelah beberapa kali reset ke setelan pabrik, semakin besar risiko pengguna mengalami pelacakan jangka panjang. Jika ID di-reset saat penginstalan ulang, tindakan ini mengurangi persistensi dan memberikan cara agar ID di-reset, meski tidak terdapat kontrol pengguna yang eksplisit untuk mereset dari dalam aplikasi atau Setelan Sistem.
Keunikan
Keunikan menciptakan kemungkinan konflik, yaitu bahwa ID yang identik ada dalam cakupan terkait. Pada tingkat yang paling tinggi, ID unik global tidak akan mengalami konflik, bahkan pada perangkat atau aplikasi lain.
Jika tidak, tingkat keunikan bergantung pada entropi ID dan sumber acak yang digunakan untuk membuatnya. Misalnya, peluang konflik jauh lebih tinggi untuk ID acak yang ditambahi tanggal kalender penginstalan (seperti 2019-03-01
) daripada untuk ID yang ditambahi stempel waktu Unix penginstalan (seperti 1551414181
).
Secara umum, ID akun pengguna dapat dianggap unik. Artinya, setiap perangkat/kombinasi akun memiliki ID unik. Di sisi lain, semakin tidak unik suatu ID dalam populasi, semakin besar perlindungan privasi karena kurang berguna untuk melacak pengguna individu.
Perlindungan integritas dan non-repudiability
Anda dapat menggunakan ID yang sulit untuk di-spoofing atau diputar ulang guna membuktikan bahwa perangkat atau akun terkait memiliki properti tertentu. Misalnya, Anda dapat membuktikan bahwa suatu perangkat bukan perangkat virtual yang digunakan oleh spammer. ID yang sulit untuk di-spoofing juga memberikan non-repudiability. Jika perangkat menandatangani pesan dengan kunci rahasia, akan sulit untuk mengklaim bahwa perangkat orang lain yang mengirim pesan tersebut. Non-repudiability dapat menjadi fitur yang diinginkan oleh pengguna, seperti saat mengautentikasi pembayaran, atau dapat menjadi properti yang tidak diinginkan, seperti saat mengirim pesan yang akan mereka sesali.
Kasus penggunaan umum dan ID yang sesuai untuk digunakan
Bagian ini menyediakan alternatif penggunaan ID hardware, seperti IMEI. Menggunakan ID hardware tidak disarankan karena pengguna tidak dapat mereset ID tersebut, dan cakupannya untuk perangkat. Dalam banyak kasus, ID lingkup aplikasi sudah cukup.
Akun
Status operator
Dalam kasus ini, aplikasi Anda berinteraksi dengan fungsionalitas telepon dan SMS perangkat menggunakan akun operator.
ID yang direkomendasikan untuk digunakan: IMEI, IMSI, dan Line1
Mengapa rekomendasi ini?
Pemanfaatan ID hardware dapat diterima jika diperlukan untuk fungsionalitas terkait operator. Misalnya, Anda dapat menggunakan ID ini untuk beralih antara operator seluler atau slot SIM, atau untuk mengirim pesan SMS melalui IP (untuk Line1) - akun pengguna berbasis SIM. Namun, untuk aplikasi yang tidak memiliki hak istimewa, sebaiknya gunakan login akun untuk mengambil informasi perangkat dari server. Salah satu alasannya adalah bahwa, di Android 6.0 (API level 23) dan lebih tinggi, ID ini hanya dapat digunakan melalui izin runtime. Pengguna mungkin menonaktifkan izin ini, jadi aplikasi Anda dapat menangani pengecualian tersebut dengan baik.
Status langganan seluler
Dalam hal ini, Anda perlu mengaitkan fungsi aplikasi dengan langganan layanan seluler tertentu di perangkat. Misalnya, Anda mungkin memiliki persyaratan untuk memverifikasi akses ke fitur aplikasi premium tertentu berdasarkan langganan seluler perangkat melalui SIM.
ID yang direkomendasikan untuk digunakan: Subscription ID API untuk mengidentifikasi SIM yang digunakan di perangkat.
ID Langganan memberikan nilai indeks (mulai dari 1) untuk mengidentifikasi SIM yang terpasang secara unik (termasuk fisik dan elektronik) yang digunakan di perangkat. Melalui ID ini, aplikasi Anda dapat mengaitkan fungsinya dengan berbagai informasi langganan untuk SIM tertentu. Nilai ini stabil untuk SIM tertentu kecuali jika perangkat direset ke setelan pabrik. Namun, mungkin ada kasus saat SIM yang sama memiliki ID Langganan yang berbeda di perangkat yang berbeda atau SIM yang berbeda memiliki ID yang sama di perangkat yang berbeda.
Mengapa rekomendasi ini?
Beberapa aplikasi mungkin saat ini menggunakan ID
ICC untuk tujuan
ini. Karena ICC ID bersifat unik secara global dan tidak dapat direset, akses
telah dibatasi untuk aplikasi dengan izin
READ_PRIVILEGED_PHONE_STATE
sejak Android 10. Mulai Android 11, Android lebih lanjut
membatasi akses ke ICCID melalui
API
getIccId()
, terlepas dari level API target aplikasi. Aplikasi yang terpengaruh harus dimigrasikan untuk
menggunakan ID Langganan.
Single sign-on
Dalam hal ini, aplikasi Anda menawarkan pengalaman login sekali, yang memungkinkan pengguna mengaitkan akun yang ada dengan organisasi Anda.
ID yang direkomendasikan untuk digunakan: Akun yang kompatibel dengan Account Manager, seperti Penautan Akun Google
Mengapa rekomendasi ini?
Penautan Akun Google memungkinkan pengguna mengaitkan akun Google pengguna yang ada dengan aplikasi Anda, sehingga memberikan akses yang lancar dan lebih aman ke produk dan layanan organisasi Anda. Selain itu, Anda dapat menentukan cakupan OAuth kustom untuk hanya membagikan data yang diperlukan, sehingga meningkatkan kepercayaan pengguna dengan menentukan dengan jelas cara data mereka digunakan.
Iklan
Penargetan
Dalam hal ini, aplikasi Anda membuat profil minat pengguna, untuk menampilkan iklan yang lebih relevan kepada mereka.
ID yang direkomendasikan untuk digunakan: Jika aplikasi Anda menggunakan ID untuk iklan dan mengupload atau memublikasikan ke Google Play, ID tersebut harus berupa ID Iklan.
Mengapa rekomendasi ini?
Ini adalah kasus penggunaan yang terkait dengan periklanan yang mungkin memerlukan ID yang tersedia di banyak aplikasi organisasi Anda, sehingga penggunaan ID Iklan adalah solusi yang paling sesuai. Penggunaan ID Iklan bersifat wajib untuk kasus penggunaan periklanan, sesuai dengan Kebijakan Konten Developer Google Play, karena pengguna dapat meresetnya.
Terlepas dari apakah Anda membagikan data pengguna di aplikasi, jika Anda mengumpulkan dan menggunakannya untuk tujuan iklan, Anda harus mendeklarasikan tujuan iklan di bagian Keamanan Data halaman Konten aplikasi di Konsol Play.
Pengukuran
Dalam hal ini, aplikasi Anda membuat profil pengguna berdasarkan perilakunya di seluruh aplikasi organisasi Anda di perangkat yang sama.
ID yang direkomendasikan untuk digunakan: Advertising ID atau API perujuk penginstalan Play
Mengapa rekomendasi ini?
Ini adalah kasus penggunaan yang terkait dengan periklanan yang mungkin memerlukan ID yang tersedia di banyak aplikasi organisasi Anda, sehingga penggunaan ID Iklan adalah solusi yang paling sesuai. Jika Anda menggunakan ID untuk kasus penggunaan iklan, ID tersebut harus berupa ID Iklan karena pengguna dapat meresetnya. Pelajari lebih lanjut di Kebijakan Konten Developer Google Play.
Konversi
Dalam kasus ini, Anda melacak konversi untuk mendeteksi apakah strategi pemasaran berhasil.
ID yang direkomendasikan untuk digunakan: Advertising ID atau Play Install Referrer API
Mengapa rekomendasi ini?
Ini adalah kasus penggunaan yang terkait dengan periklanan yang mungkin memerlukan ID yang tersedia di banyak aplikasi organisasi Anda, sehingga penggunaan ID Iklan adalah solusi yang paling sesuai. Penggunaan ID Iklan bersifat wajib untuk kasus penggunaan periklanan, sesuai dengan Kebijakan Konten Developer Google Play, karena pengguna dapat meresetnya.
Pemasaran ulang
Dalam hal ini, aplikasi Anda menampilkan iklan berdasarkan minat pengguna sebelumnya.
ID yang direkomendasikan untuk digunakan: ID Iklan
Mengapa rekomendasi ini?
Ini adalah kasus penggunaan yang terkait dengan periklanan yang mungkin memerlukan ID yang tersedia di banyak aplikasi organisasi Anda, sehingga penggunaan ID Iklan adalah solusi yang paling sesuai. Penggunaan ID Iklan bersifat wajib untuk kasus penggunaan periklanan, sesuai dengan Kebijakan Konten Developer Google Play, karena pengguna dapat meresetnya.
Analisis aplikasi
Dalam hal ini, aplikasi Anda mengevaluasi perilaku pengguna untuk membantu Anda menentukan hal berikut:
- Produk atau aplikasi lain dari organisasi Anda yang mungkin cocok untuk pengguna.
- Cara membuat pengguna tetap tertarik menggunakan aplikasi Anda.
- Mengukur statistik penggunaan dan analisis untuk pengguna yang logout atau anonim.
Solusi yang memungkinkan antara lain:
- ID Set Aplikasi: ID Set Aplikasi memungkinkan Anda menganalisis perilaku pengguna di beberapa aplikasi yang dimiliki organisasi Anda, selama Anda tidak menggunakan data pengguna untuk tujuan iklan. Jika Anda menargetkan perangkat yang didukung oleh layanan Google Play, sebaiknya gunakan ID Set Aplikasi.
- ID Firebase (FID): FID dicakupkan ke aplikasi yang membuatnya, sehingga mencegah ID digunakan untuk melacak pengguna di berbagai aplikasi. ID ini juga dapat direset dengan mudah, karena pengguna dapat menghapus data aplikasi atau menginstal ulang aplikasi. Proses pembuatan FID sangat mudah; lihat panduan penginstalan Firebase.
Pengembangan aplikasi
Crash reporting
Dalam hal ini, aplikasi Anda mengumpulkan data tentang kapan dan mengapa aplikasi mengalami error di perangkat pengguna.
ID yang direkomendasikan untuk digunakan: FID atau ID kumpulan aplikasi
Mengapa rekomendasi ini?
FID dicakupkan ke aplikasi yang membuatnya, sehingga mencegah ID digunakan untuk melacak pengguna di berbagai aplikasi. ID ini juga mudah direset, karena pengguna dapat menghapus data aplikasi atau menginstal ulang aplikasi. Proses pembuatan FID sangat mudah; lihat panduan penginstalan Firebase. ID Set Aplikasi memungkinkan Anda menganalisis perilaku pengguna di beberapa aplikasi yang dimiliki organisasi, selama Anda tidak menggunakan data pengguna untuk tujuan iklan.
Pelaporan performa
Dalam hal ini, aplikasi Anda mengumpulkan metrik performa, seperti waktu pemuatan dan penggunaan baterai, untuk membantu meningkatkan kualitas aplikasi Anda.
ID yang direkomendasikan untuk digunakan: Firebase Performance Monitoring
Mengapa rekomendasi ini?
Firebase Performance Monitoring membantu Anda berfokus pada metrik yang paling penting bagi Anda, dan menguji dampak perubahan terbaru di aplikasi Anda.
Pengujian aplikasi
Dalam hal ini, aplikasi Anda mengevaluasi pengalaman pengguna dengan aplikasi Anda untuk tujuan pengujian atau proses debug.
ID yang direkomendasikan untuk digunakan: FID atau ID kumpulan aplikasi
Mengapa rekomendasi ini?
FID dicakupkan ke aplikasi yang membuatnya, sehingga mencegah ID digunakan untuk melacak pengguna di berbagai aplikasi. ID ini juga mudah direset, karena pengguna dapat menghapus data aplikasi atau menginstal ulang aplikasi. Proses pembuatan FID sangat mudah; lihat panduan penginstalan Firebase. ID Set Aplikasi memungkinkan Anda menganalisis perilaku pengguna di beberapa aplikasi yang dimiliki organisasi, selama Anda tidak menggunakan data pengguna untuk tujuan iklan.
Penginstalan lintas perangkat
Dalam hal ini, aplikasi Anda harus mengidentifikasi instance aplikasi yang benar saat diinstal di beberapa perangkat untuk pengguna yang sama.
ID yang direkomendasikan untuk digunakan: FID atau GUID
Mengapa rekomendasi ini?
FID dirancang secara eksplisit untuk tujuan ini; cakupannya terbatas pada aplikasi sehingga tidak dapat digunakan untuk melacak pengguna di aplikasi yang berbeda, dan akan di-reset saat aplikasi diinstal ulang. Dalam kasus yang jarang terjadi saat FID tidak mencukupi, Anda juga dapat menggunakan GUID.
Keamanan
Deteksi penyalahgunaan
Dalam kasus ini, Anda mencoba mendeteksi beberapa perangkat palsu yang menyerang layanan backend.
ID yang direkomendasikan untuk digunakan: Token integritas Google Play Integrity API
Mengapa rekomendasi ini?
Untuk memverifikasi bahwa permintaan berasal dari perangkat Android asli—bukan emulator atau kode lain yang melakukan spoofing perangkat lain—gunakan Google Play Integrity API.
Penipuan iklan
Dalam hal ini, aplikasi Anda memeriksa apakah tayangan dan tindakan pengguna di aplikasi Anda asli dan dapat diverifikasi.
ID yang direkomendasikan untuk digunakan: ID Iklan
Mengapa rekomendasi ini?
Penggunaan ID Iklan bersifat wajib untuk kasus penggunaan periklanan, sesuai dengan Kebijakan Konten Developer Google Play, karena pengguna dapat meresetnya.
Manajemen hak digital (DRM)
Dalam hal ini, aplikasi Anda ingin melindungi akses penipuan ke kekayaan intelektual atau konten berbayar.
ID yang direkomendasikan untuk digunakan: Penggunaan FID atau GUID akan memaksa pengguna untuk menginstal ulang aplikasi guna menghindari batasan konten, yang merupakan beban yang cukup besar untuk mencegah sebagian besar orang. Jika perlindungan ini tidak memadai, Android menyediakan DRM API, yang dapat digunakan untuk membatasi akses ke konten, termasuk ID per APK, yaitu Widevine ID.
Preferensi pengguna
Dalam hal ini, aplikasi Anda menyimpan status pengguna per perangkat di aplikasi Anda, terutama untuk pengguna yang tidak login. Anda dapat mentransfer status ini ke aplikasi lain yang ditandatangani dengan kunci yang sama di perangkat yang sama.
ID yang direkomendasikan untuk digunakan: FID atau GUID
Mengapa rekomendasi ini?
Informasi yang tetap bertahan bahkan setelah dilakukan penginstalan ulang tidak direkomendasikan karena pengguna mungkin ingin mereset preferensi dengan menginstal ulang aplikasi.