Apple mewajibkan developer yang memublikasikan aplikasi di App Store agar mengungkapkan informasi tertentu terkait penggunaan data aplikasi mereka. Apple telah mengumumkan bahwa pengungkapan ini diperlukan untuk aplikasi baru dan update aplikasi mulai tanggal 8 Desember 2020.
Dokumen ini berisi perilaku library platform Firebase Apple yang dapat mengharuskan pengungkapan sesuai dengan pedoman Apple. Saat menginstal Firebase, catat target build yang diinstal ke aplikasi Anda dengan pengelola dependensi pilihan Anda. Untuk setiap target yang dicantumkan oleh dependensi manager, tinjau bagian yang sesuai dalam dokumen ini untuk menentukan pengumpulan data yang harus Anda ungkap. Jumlah target build Firebase yang telah diinstal mungkin lebih besar dari jumlah yang diperkirakan karena beberapa target build Firebase memiliki dependensi sementara terhadap target lainnya.
Jika Anda menggunakan fitur produk opsional yang membutuhkan data tambahan atau berpartisipasi dalam pengujian fitur produk baru yang menggunakan data tambahan, pastikan untuk memeriksa apakah fitur atau pengujian tersebut mengharuskan pengungkapan data tambahan atau tidak.
Untuk memastikan pengungkapan aplikasi yang akurat, Anda sebaiknya selalu menggunakan versi terbaru dari setiap Firebase SDK.
Agen pengguna Firebase
Agen pengguna Firebase adalah paket informasi yang dikumpulkan dari sebagian besar Firebase SDK dan mencakup hal berikut: perangkat, OS, ID paket aplikasi, dan platform developer. Agen pengguna tersebut tidak pernah ditautkan ke pengguna atau ID perangkat, dan digunakan oleh tim Firebase untuk menentukan adopsi platform dan versi sebagai bahan dalam pengambilan keputusan terkait fitur Firebase yang lebih baik.
Inti
FirebaseCore
- Tidak mengumpulkan data.
FirebaseCoreDiagnostics
Selalu mengumpulkan
- Mengumpulkan agen pengguna Firebase.
GoogleUtilities
- Tidak mengumpulkan data, tetapi menyertakan utilitas jaringan yang dapat digunakan oleh SDK lain untuk mengumpulkan data.
GoogleDataTransport
Mencakup aplikasi utilitas jaringan yang mungkin digunakan oleh SDK lain untuk mengumpulkan data.
Selalu mengumpulkan
- Mengumpulkan agen pengguna Firebase.
- Mengumpulkan metadata tentang performa SDK, seperti ukuran cache peristiwa log klien dan jumlah peristiwa log klien yang dihapus karena berbagai alasan, untuk memantau dan mempertahankan kualitas produk.
A/B Testing
FirebaseABTesting
A/B Testing tidak mengumpulkan data.
Firebase A/B Testing SDK menetapkan dan menggunakan properti pengguna Google Analytics untuk menentukan keanggotaan dalam grup eksperimen untuk Firebase Remote Config dan Firebase In-App Messaging.
Google Analytics
Informasi pengumpulan data Google Analytics dapat ditemukan dalam artikel dukungan ini.
App Check
FirebaseAppCheck
Tergantung penggunaan
- Jika penyedia DeviceCheck terinstal, token
DCDevice
dari DeviceCheck akan dikumpulkan. - Jika penyedia App Attest terinstal, objek pengesahan dan objek pernyataan dari App Attest akan dikumpulkan.
App Distribution
App Distribution SDK hanya ditujukan untuk penggunaan uji beta. Jangan menyertakan App Distribution SDK dalam aplikasi Anda saat mengirimkan ke App Store.
Authentication
FirebaseAuthentication
Selalu mengumpulkan
- Membuat dan menyimpan ID untuk tujuan autentikasi pengguna.
Tergantung penggunaan
- Mengumpulkan nama tampilan, jika developer memberikan nama tampilan untuk pengguna.
- Mengumpulkan alamat email pengguna seperti yang diberikan oleh developer saat menggunakan sandi email atau autentikasi link email, atau seperti yang terdapat di respons dari penyedia gabungan jika developer menggunakan identitas gabungan.
- Mengumpulkan nomor telepon pengguna seperti yang disediakan oleh developer saat menggunakan autentikasi ponsel atau jika nomor telepon pengguna ditambahkan sebagai metode autentikasi. Juga dikumpulkan selama alur SMS sebagai autentikasi faktor kedua.
- Mengumpulkan informasi kontak yang terkait dengan penyedia autentikasi pihak ketiga jika developer menggunakan penyedia autentikasi pihak ketiga dengan Firebase Authentication. Misalnya, ID pengguna dapat ditautkan ke profil Facebook-nya jika developer menggunakan autentikasi Facebook, bergantung pada cakupan yang diberikan. Baca dokumentasi penyedia autentikasi untuk mengetahui informasi selengkapnya.
- Menyimpan ID Game Center pengguna jika aplikasi ditautkan ke Game Center.
- Mengumpulkan token ini jika aplikasi Anda menggunakan reCAPTCHA Enterprise untuk melindungi alur Autentikasi. Lihat Detail privasi Apple untuk reCAPTCHA Enterprise tambahan.
Crashlytics
FirebaseCrashlytics
Selalu mengumpulkan
- Mengumpulkan pelacakan tumpukan dan status aplikasi yang relevan saat aplikasi mengalami error.
- Mengumpulkan informasi perangkat dan OS untuk membantu proses debug error.
Tergantung penggunaan
- Mengumpulkan kunci kustom, log, dan ID pengguna berteks bebas yang ditambahkan developer ke laporan error. Juga mengumpulkan peristiwa non-fatal yang ditentukan developer dengan pelacakan tumpukan kustom.
- Mengumpulkan log "breadcrumb" jika Crashlytics digunakan bersama dengan Google Analytics. Log ini mengidentifikasi tindakan pengguna persis sebelum error bersama dengan jumlah error.
Realtime Database
FirebaseDatabase
Selalu mengumpulkan
- Mengumpulkan agen pengguna Firebase.
Dynamic Links
FirebaseDynamicLinks
Selalu mengumpulkan
- Mengumpulkan data perangkat untuk sementara, termasuk dimensi layar perangkat, bahasa, versi OS, ID paket, alamat IP, dan versi Firebase SDK untuk deep link yang ditangguhkan (deep-link setelah penginstalan aplikasi).
Mengumpulkan secara default
- Melakukan pencatatan otomatis peristiwa interaksi link ke dalam log melalui Google Analytics jika
terdapat framework
FirebaseAnalytics
. Untuk menonaktifkan log peristiwa otomatis, hapusFirebaseAnalytics
dari aplikasi. - Mengumpulkan URL link dinamis untuk sementara pada pasteboard perangkat, jika tersedia, saat peluncuran pertama aplikasi. Developer dapat menonaktifkan penggunaan Pasteboard
dengan menetapkan properti
FirebaseDeepLinkPasteboardRetrievalEnabled
keNO
dalam fileInfo.plist
aplikasi.
Cloud Firestore
FirebaseFirestore
Selalu mengumpulkan
- Mengumpulkan agen pengguna Firebase.
Cloud Functions
FirebaseFunctions
Selalu mengumpulkan
- Mengumpulkan metadata pemanggilan fungsi, termasuk nama fungsi dan alamat IP pemanggil fungsi.
In-App Messaging
FirebaseInAppMessaging
Selalu mengumpulkan
- Merekam interaksi dengan pesan dalam aplikasi. Interaksi ini (tayangan, klik, penutupan) dicatat melalui Google Analytics. Interaksi juga direkam oleh Firebase untuk membantu developer mengevaluasi efektivitas kampanye messaging.
Penginstalan Firebase
FirebaseInstallations
Selalu mengumpulkan
- Menghasilkan ID per-penginstalan yang tidak secara unik mengidentifikasi pengguna atau perangkat fisik. Untuk mengetahui informasi tentang cara berbagai produk menggunakan ID penginstalan ini, lihat Panduan mengelola penginstalan Firebase.
- Mengumpulkan agen pengguna Firebase.
FirebaseInstanceID (tidak digunakan lagi)
FirebaseInstanceID
tidak digunakan lagi.
Selalu mengumpulkan
- Menghasilkan ID per-penginstalan yang tidak secara unik mengidentifikasi pengguna atau perangkat fisik.
- Menghasilkan dan mengumpulkan token pendaftaran FCM, ID instance aplikasi
yang digunakan oleh
FirebaseMessaging
untuk notifikasi push. - Merekam token APNs dan mengaitkannya dengan ID instance Firebase (token pendaftaran FCM).
- Mengumpulkan model perangkat, bahasa, zona waktu, versi OS, ID aplikasi, dan versi aplikasi untuk membuat token pendaftaran FCM.
Cloud Messaging
FirebaseMessaging
Selalu mengumpulkan
- Mengumpulkan ID aplikasi dan versi aplikasi untuk berlangganan dan menghentikan langganan topik.
Mengumpulkan secara default
- Otomatis mencatat interaksi notifikasi ke dalam log melalui Google Analytics jika
terdapat framework
FirebaseAnalytics
. Untuk menonaktifkan perilaku ini, hapusFirebaseAnalytics
dari aplikasi Anda.
Firebase ML
FirebaseMLCommon
- Tidak mengumpulkan data apa pun.
FirebaseMLModelDownloader
Selalu mengumpulkan
- Mengumpulkan metadata download model ML, seperti peristiwa download, peristiwa penghapusan, dan error.
FirebaseMLModelInterpreter
Mengumpulkan secara default
- Mengumpulkan metadata inferensi ML, seperti durasi inferensi dan tingkat error.
Untuk menonaktifkan, tetapkan properti
ModelInterpreter.isStatsCollectionEnabled
kefalse
.
FirebaseMLVision
Mengumpulkan secara default
- Mengumpulkan metadata model ML Vision, seperti peristiwa pembuatan dan deteksi. Untuk
menonaktifkan, tetapkan properti
Vision.isStatsCollectionEnabled
kefalse
.
Performance Monitoring
FirebasePerformance
Selalu mengumpulkan
- Mengumpulkan alamat IP untuk menyediakan segmentasi data performa berbasis geografi.
- Mengumpulkan metrik performa aplikasi seperti waktu peluncuran aplikasi dan latensi permintaan jaringan, serta trace khusus yang ditentukan developer untuk mengukur performa aplikasi.
- Mengumpulkan penggunaan CPU/memori aplikasi untuk memberikan tampilan linimasa performa aplikasi.
- Mengumpulkan informasi perangkat, informasi OS, informasi aplikasi untuk memfilter data performa berdasarkan berbagai segmen perangkat.
Remote Config
FirebaseRemoteConfig
Selalu mengumpulkan
- Mengumpulkan agen pengguna Firebase.
- Mengumpulkan kode negara, kode bahasa, zona waktu, versi OS, ID aplikasi Apple Firebase, dan ID paket perangkat untuk menargetkan parameter yang didasarkan pada data ini. Versi OS dan versi SDK juga dikumpulkan dan digabungkan untuk memahami tren penggunaan dan menginformasikan arah produk.
Tergantung penggunaan
Jika Remote Config digunakan bersama dengan Google Analytics:
- Mengumpulkan properti pengguna yang diperoleh Firebase SDK untuk Google Analytics guna menargetkan parameter yang didasarkan pada kondisi properti pengguna.
- Mengumpulkan stempel waktu peristiwa
first_open
yang diperoleh Firebase SDK untuk Google Analytics guna menargetkan parameter yang didasarkan pada waktu pertama kali dibuka.
Jika personalisasi Remote Config digunakan:
- Data yang diperoleh Firebase Remote Config SDK dan peristiwa yang diperoleh Firebase SDK untuk Google Analytics dapat digunakan untuk membuat model prediktif dan mengukur performa model tersebut.
Sesi Firebase
FirebaseSessions
Selalu mengumpulkan
- Mengumpulkan metadata tentang performa aplikasi, seperti ID paket, informasi OS, versi SDK, dan jenis koneksi jaringan untuk memantau kualitas aplikasi.
- Mengumpulkan data penggunaan seperti waktu aplikasi yang berjalan di latar belakang untuk mengelompokkan metrik performa ke dalam sesi pengguna untuk memfilter penggunaan berdasarkan sesi.
Cloud Storage
FirebaseStorage
Selalu mengumpulkan
- Mengumpulkan agen pengguna Firebase.