Dengan iOS 14.5, Apple mengharuskan pengembang untuk menerima izin pengguna melalui kerangka Transparansi Pelacakan Aplikasi untuk melacak mereka atau mengakses pengenal iklan (IDFA) perangkat mereka. Lihat Privasi Pengguna dan Penggunaan Data Apple dan dokumentasi Transparansi Pelacakan Aplikasi Apple untuk detail selengkapnya.
Produk Firebase yang terpengaruh
SDK Firebase tidak mengakses IDFA, meskipun beberapa memiliki integrasi dengan Google Analytics yang mungkin melibatkan akses IDFA.
Tabel di bawah mencantumkan produk Firebase yang tersedia di platform Apple dan menjelaskan bagaimana fungsi setiap produk terpengaruh jika IDFA tidak dapat diakses.
Produk | Dampak jika IDFA tidak dapat diakses |
---|---|
Pengujian A/B | Beberapa data penargetan (seperti demografi) dalam integrasi Pengujian A/B dengan Google Analytics berasal dari IDFA. Di aplikasi tanpa akses ke IDFA, penargetan ini tidak tersedia. |
Pemeriksaan Aplikasi | Tidak ada dampak |
Distribusi Aplikasi | Tidak ada dampak |
Autentikasi | Tidak ada dampak di seluruh penyedia Authentication dan Authentication pihak pertama, seperti Google Sign-In dan Phone Authentication. |
Crashlytics | Tidak ada dampak. Integrasi Crashlytics dengan Google Analytics yang menyediakan data error dan breadcrumb real-time tidak bergantung pada IDFA. |
Tautan Dinamis | Tidak ada dampak untuk fungsi pembukaan tautan. Saat digunakan dengan Google Analytics, atribusi untuk peristiwa konversi tautan tidak tersedia. |
Cloud Firestore | Tidak ada dampak |
Fungsi Cloud | Tidak ada dampak |
Pesan Dalam Aplikasi | Tidak ada dampak |
Instalasi Firebase | Tidak ada dampak |
ID Instance | Tidak ada dampak |
Pesan Awan | Saat digunakan dengan Google Analytics, Google Analytics akan secara otomatis mencatat beberapa peristiwa konversi terkait FCM. Atribusi untuk peristiwa ini memerlukan akses IDFA. |
Firebase ML | Tidak ada dampak |
Pemantauan Kinerja | Tidak ada dampak |
Konfigurasi Jarak Jauh | Saat digunakan dengan Google Analytics, Remote Config tidak mengizinkan properti pengguna yang dibuat secara otomatis untuk penargetan tanpa akses IDFA. |
Basis Data Waktu Nyata | Tidak ada dampak |
Penyimpanan awan | Tidak ada dampak |
Integrasi Firebase yang terpengaruh
Tabel di bawah mencantumkan produk terintegrasi Firebase yang terpengaruh jika IDFA tidak dapat diakses.
Produk | Dampak jika IDFA tidak dapat diakses |
---|---|
Google Analytics | Pencatatan peristiwa Analytics, pelaporan peristiwa, dan pengukuran konversi tidak terpengaruh, tetapi atribusi terpengaruh jika IDFA tidak dapat diakses. Untuk mempelajari lebih lanjut tentang tanggapan Google terhadap iOS 14, lihat entri blog kami . |
Meminta Izin Pelacakan Aplikasi di iOS 14
Jika Anda ingin aplikasi Apple Anda dapat mengakses IDFA, Anda dapat menambahkan kerangka Transparansi Pelacakan Aplikasi Apple ke aplikasi Anda dan meminta izin untuk melacak atau mengakses IDFA pengguna Anda.
Banyak aplikasi memilih untuk menampilkan layar pemanasan, atau penjelasan, sebelum meminta izin. Layar penjelasan memungkinkan Anda memberi pengguna lebih banyak konteks tentang bagaimana aplikasi Anda menggunakan IDFA sebelum meminta akses.
Jika Anda adalah penayang aplikasi AdMob atau Ad Manager, pertimbangkan untuk menggunakan Funding Choices , yang menangani perolehan izin untuk menayangkan iklan yang dipersonalisasi serta izin untuk melacak pengguna sesuai dengan pedoman Apple secara otomatis. Lihat halaman Izin AdMob dengan Pesan Pengguna untuk detail selengkapnya.
Panduan berikut memberikan solusi menggunakan Firebase In-App Messaging untuk membuat dan menampilkan layar penjelasan sebelum meminta akses pelacakan melalui Transparansi Pelacakan Aplikasi.
Tambahkan In-App Messaging ke aplikasi Anda
Ikuti petunjuk untuk menambahkan In-App Messaging ke aplikasi Apple Anda .
Menangani penutupan pesan dalam aplikasi
Pertama, hindari menampilkan layar penjelasan pada perangkat yang tidak dapat menampilkan dialog izin, seperti perangkat yang menjalankan iOS 13. Pastikan kode ini dijalankan segera setelah FirebaseApp.configure()
.
Cepat
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
Terapkan protokol InAppMessagingDisplayDelegate
untuk menangani kejadian saat pengguna menutup layar penjelasan. Jika pengguna mengetuk OK, tampilkan prompt sistem melalui kerangka Transparansi Pelacakan Aplikasi.
Cepat
// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self
func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
with action: InAppMessagingAction) {
switch action.actionText {
case "OK":
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
case _:
// do nothing
}
}
Buat kampanye In-App Messaging
Setelah kode diterapkan di aplikasi Anda, buat pesan dalam aplikasi di Firebase console.
- Di Firebase console , buat kampanye In-App Messaging baru.
- Isi pesan dalam aplikasi dengan konten yang Anda inginkan dan atur pesan untuk memicu pada acara
app_launch
. - Di bagian Penargetan , pastikan kampanye hanya menargetkan versi terbaru aplikasi Anda ke atas.
Anda dapat menyesuaikan tampilan layar penjelasan dengan mengikuti petunjuk dalam dokumentasi In-App Messaging .
Opsional: Uji A/B layar penjelasan yang berbeda
In-App Messaging memiliki integrasi bawaan dengan Firebase A/B Testing , yang dapat Anda gunakan untuk bereksperimen dengan layar penjelasan yang berbeda.
Pengujian A/B Firebase secara otomatis membuat grup eksperimen dan membantu Anda memvisualisasikan cara pengguna berinteraksi dengan berbagai varian aplikasi Anda.
Rekam izin pelacakan aplikasi
Jika Anda tidak mencatat peristiwa Google Analytics saat menangani respons izin pelacakan aplikasi, Anda harus melakukannya untuk mengukur perubahan dalam tingkat respons saat menjalankan eksperimen A/B.
Cepat
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
Buat peristiwa konversi baru
Di bagian Analytics di Firebase console, buka menu Konversi , lalu tambahkan peristiwa konversi baru dengan nama yang sama dengan peristiwa yang dicatat dalam log dengan kode contoh di atas.
Buat eksperimen baru
Di menu In-App Messaging konsol , klik Eksperimen Baru , lalu ikuti petunjuk di layar yang dihasilkan.
- Di bagian Penargetan , pastikan kampanye hanya menargetkan versi terbaru aplikasi Anda ke atas.
- Di bagian Sasaran , pilih peristiwa konversi yang Anda buat dengan kode contoh di atas serta metrik lain yang ingin Anda lacak.
Setelah Anda memublikasikan eksperimen, eksperimen perlu mengumpulkan data selama beberapa waktu sebelum dapat memberikan hasil yang konklusif.
Baca dokumentasi Pengujian A/B Firebase untuk informasi tentang cara memantau eksperimen dan meluncurkan varian yang berhasil.