Pengiriman - Android SDK v2 (Lama)

Dokumen ini menjelaskan cara mengelola pengiriman data ke Google Analytics menggunakan Google Analytics SDK untuk Android v2.

Ringkasan

Di Google Analytics SDK untuk Android, data yang dikumpulkan seperti tampilan layar atau peristiwa disimpan secara lokal dalam antrean sebelum dikirim ke server Google Analytics. Proses pengiriman potongan-potongan data ini (disebut di sini sebagai "hit") dari SDK ke Google Analytics dikenal sebagai pengiriman.

Pengiriman bersifat unik untuk library koleksi seluler dan dirancang untuk mengurangi tantangan akses jaringan yang tidak dapat diandalkan dan masa pakai baterai yang terbatas.

Ada dua jenis pengiriman:

  • Pengiriman berkala – secara otomatis mengirim hit pada interval berulang yang Anda tentukan secara terprogram atau dalam file analytics.xml.
  • Pengiriman manual – mengirim hit secara manual untuk mengirim data pada waktu yang tepat bagi Anda, misalnya saat sudah ada koneksi HTTP.

Kedua jenis pengiriman terjadi di luar UI thread utama dalam SDK versi 2

Bagian selanjutnya dari dokumen ini akan memberikan pembahasan lebih mendalam tentang setiap jenis pengiriman dan cara menerapkannya di aplikasi Anda.

Pengiriman Berkala

Saat aplikasi Anda mengumpulkan data GA, data tersebut ditambahkan ke antrean dan dikirim secara berkala ke Google Analytics. Pengiriman berkala dapat terjadi saat aplikasi berjalan di latar depan atau di latar belakang.

Periode pengiriman default adalah 30 menit. Anda dapat memberikan interval sendiri dalam detik menggunakan parameter ga_dispatchPeriod dalam file analytics.xml Anda, atau dengan memanggil setDispatchPeriod(int dispatchPeriodInSeconds) seperti dalam contoh ini:

Dalam file analytics.xml Anda:

<integer name="ga_dispatchPeriod">60</integer>

Secara terprogram:

GAServiceManager.getInstance().setDispatchPeriod(60);

Menetapkan nilai negatif akan menonaktifkan pengiriman berkala, sehingga Anda harus menggunakan pengiriman manual jika ingin mengirim data apa pun ke Google Analytics. Di sisi lain, menetapkan nilai 0 akan segera mengirimkan setiap hit jika koneksi jaringan tersedia.

Setelah semua hit dikirim, pengiriman berkala akan memasuki mode hemat daya dan dinonaktifkan hingga panggilan kirim lainnya dilakukan.

Jika pengguna kehilangan akses jaringan atau keluar dari aplikasi Anda saat masih ada hit yang menunggu dikirim, hit tersebut akan dipertahankan di penyimpanan lokal. Fungsi ini akan dikirim pada saat berikutnya aplikasi Anda berjalan dan pengiriman dipanggil.

Pengiriman Manual

Selain mengandalkan pengiriman berkala, mungkin ada saatnya Anda ingin mengirim hit secara manual. Misalnya, Anda dapat memaketkan pengiriman dengan permintaan HTTP lain yang dibuat oleh aplikasi Anda untuk mengurangi overhead.

Hit dapat dikirim secara manual menggunakan instance GAServiceManager:

GAServiceManager.getInstance().dispatch();