Google Analytics untuk SDK Aplikasi Seluler untuk Android memudahkan penerapan Google Analytics di aplikasi berbasis Android. Dokumen ini menjelaskan cara mengintegrasikan SDK dengan aplikasi Anda.
Ringkasan SDK
SDK ini menggunakan model pelacakan yang dirancang untuk melacak pengguna ke situs tradisional dan interaksi dengan widget di halaman web tradisional. Karena alasan ini, istilah yang digunakan di bawah mencerminkan model pelacakan situs konvensional dan sedang dipetakan untuk melacak aplikasi seluler. Anda harus sudah memahami pelacakan Analytics untuk memahami cara kerja SDK ini.
Gunakan SDK pelacakan seluler untuk melacak aplikasi ponsel dengan jenis interaksi Analytics berikut:
- Pelacakan Tayangan Halaman
- Kunjungan halaman adalah cara standar untuk mengukur volume traffic ke situs biasa. Karena aplikasi seluler tidak berisi halaman HTML, Anda harus memutuskan kapan (dan seberapa sering) memicu permintaan kunjungan halaman. Selain itu, karena permintaan kunjungan halaman dirancang untuk melaporkan struktur direktori, Anda harus memberikan nama deskriptif untuk permintaan tersebut guna memanfaatkan penamaan jalur halaman dalam laporan Konten di Analytics. Nama yang Anda pilih akan diisi dalam laporan Analytics sebagai jalur halaman meskipun sebenarnya nama tersebut sebenarnya bukan halaman HTML. Namun, Anda dapat memanfaatkan hal ini dengan menyusun jalur guna memberikan pengelompokan tambahan untuk panggilan Anda.
- Pelacakan Peristiwa
- Di Analytics, peristiwa dirancang untuk melacak interaksi pengguna terhadap elemen halaman web secara jelas dari permintaan kunjungan halaman. Anda dapat menggunakan fitur Pelacakan Peristiwa dari Google Analytics untuk melakukan panggilan tambahan yang akan dilaporkan di bagian Pelacakan Peristiwa pada antarmuka laporan Analytics. Peristiwa dikelompokkan menggunakan kategori dan juga dapat menggunakan label per peristiwa, sehingga memberikan fleksibilitas dalam pelaporan. Misalnya, aplikasi multimedia dapat memiliki tindakan play/stop/pause untuk kategori video dan menetapkan label untuk setiap nama video. Laporan Google Analytics kemudian akan menggabungkan peristiwa untuk semua peristiwa yang diberi tag dengan kategori video. Untuk informasi selengkapnya tentang Pelacakan Peristiwa, lihat Panduan Pelacakan Peristiwa
- Pelacakan E-commerce
- Gunakan fitur Pelacakan e-commerce untuk melacak transaksi keranjang belanja
dan pembelian dalam aplikasi.
Untuk melacak transaksi, gunakan class
Transaction
untuk mewakili keseluruhan informasi pembelian serta classItem
untuk mewakili setiap produk di keranjang belanja. Setelah dikumpulkan, data tersebut kemudian dapat dilihat di bagian Pelaporan e-commerce pada antarmuka Google Analytics. Untuk informasi selengkapnya tentang Pelacakan E-commerce, lihat Panduan Pelacakan E-commerce. - Variabel Khusus
- Variabel kustom adalah tag pasangan nilai nama yang dapat Anda sisipkan dalam kode pelacakan untuk menyaring pelacakan Google Analytics. Untuk informasi selengkapnya tentang cara menggunakan variabel kustom, baca Panduan Variabel Kustom.
Memulai
Persyaratan
Untuk mengintegrasikan kemampuan pelacakan Google Analytics dengan aplikasi Android, Anda akan membutuhkan hal berikut:
- SDK developer Android (tersedia untuk Windows, Mac OS X, dan Linux)
- Google Analytics untuk Aplikasi Seluler Android SDK
Penyiapan
- Tambahkan
libGoogleAnalytics.jar
ke direktori/libs
project Anda. -
Tambahkan izin berikut ke file manifes
AndroidManifest.xml
project Anda:<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
Aplikasi contoh disertakan dengan SDK yang menunjukkan seperti apa tampilan project Anda jika berhasil disiapkan. Jangan ragu untuk menggunakannya sebagai template untuk aplikasi Anda sendiri yang terintegrasi dengan Analytics.
Menggunakan SDK
Sebelum mulai menggunakan SDK, pertama-tama Anda harus membuat akun gratis di www.google.com/analytics dan membuat properti web baru di akun tersebut menggunakan URL situs palsu yang deskriptif (misalnya, http://mymobileapp.mywebsite.com
). Setelah membuat properti, tuliskan atau simpan salinan ID properti web yang dibuat untuk properti yang baru dibuat.
Anda harus menunjukkan kepada pengguna, baik di dalam aplikasi itu sendiri atau dalam persyaratan layanan Anda, bahwa Anda berhak melacak dan melaporkan aktivitas pengguna di dalam aplikasi Anda secara anonim. Penggunaan Google Analytics SDK oleh Anda juga diatur oleh Persyaratan Layanan Google Analytics, yang harus Anda setujui ketika mendaftar untuk membuat akun.
Contoh dan Praktik Terbaik
Anda dapat menemukan kode contoh dan praktik terbaik di code.google.com pada bagian project analytics-api-samples.
Library EasyTracker
Tersedia Library EasyTracker. Library ini menyediakan pelacakan level aplikasi dan Aktivitas dengan hampir tanpa upaya pengembangan. Anda dapat menemukannya di bagian Download pada project analytics-api-samples.
Memulai Pelacak
Dapatkan singleton pelacak dengan memanggil GoogleAnalyticsTracker.getInstance()
. Lalu, panggil metode startNewSession
, dengan meneruskan ID properti web dan aktivitas yang sedang dilacak. Anda dapat memanggil metode ini secara langsung dalam metode onCreate
Aktivitas jika aplikasi hanya memiliki satu Aktivitas. Contoh:
package com.google.android.apps.analytics.sample; import com.google.android.apps.analytics.GoogleAnalyticsTracker; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class TestActivity extends Activity { GoogleAnalyticsTracker tracker; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); tracker = GoogleAnalyticsTracker.getInstance(); // Start the tracker in manual dispatch mode... tracker.startNewSession("UA-YOUR-ACCOUNT-HERE", this); // ...alternatively, the tracker can be started with a dispatch interval (in seconds). //tracker.startNewSession("UA-YOUR-ACCOUNT-HERE", 20, this); setContentView(R.layout.main); Button createEventButton = (Button)findViewById(R.id.NewEventButton); createEventButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { tracker.trackEvent( "Clicks", // Category "Button", // Action "clicked", // Label 77); // Value } }); Button createPageButton = (Button)findViewById(R.id.NewPageButton); createPageButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // Add a Custom Variable to this pageview, with name of "Medium" and value "MobileApp" and // scope of session-level. tracker.setCustomVar(1, "Navigation Type", "Button click", 2); // Track a page view. This is probably the best way to track which parts of your application // are being used. // E.g. // tracker.trackPageView("/help"); to track someone looking at the help screen. // tracker.trackPageView("/level2"); to track someone reaching level 2 in a game. // tracker.trackPageView("/uploadScreen"); to track someone using an upload screen. tracker.trackPageView("/testApplicationHomeScreen"); } }); Button quitButton = (Button)findViewById(R.id.QuitButton); quitButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } }); Button dispatchButton = (Button)findViewById(R.id.DispatchButton); dispatchButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // Manually start a dispatch, not needed if the tracker was started with a dispatch // interval. tracker.dispatch(); } }); } @Override protected void onDestroy() { super.onDestroy(); // Stop the tracker when it is no longer needed. tracker.stopSession(); } }
Jika memiliki beberapa Aktivitas dalam aplikasi, Anda dapat menggunakan Library EasyTracker yang disediakan di bagian Download dalam project analytics-api-samples.
Melacak Tayangan Halaman dan Peristiwa
Melacak kunjungan halaman dan peristiwa menjadi mudah: cukup panggil trackPageView
objek pelacak setiap kali Anda ingin memicu kunjungan halaman. Panggil trackEvent
untuk merekam peristiwa. Untuk mengetahui informasi selengkapnya tentang kunjungan halaman dan peristiwa, lihat Ringkasan SDK di atas.
Menggunakan Variabel Khusus
Menambahkan variabel kustom juga sangat mudah: cukup gunakan
metode setCustomVar
yang disediakan oleh SDK seluler. Anda perlu merencanakan terlebih dahulu yang mengindeks setiap peta variabel kustom, sehingga Anda tidak menimpa variabel yang sudah ada sebelumnya. Untuk informasi selengkapnya tentang variabel kustom, lihat Panduan Variabel Kustom. Perhatikan, metode setCustomVar
tidak langsung mengirim data sendiri. Sebaliknya, data dikirim dengan kunjungan halaman atau peristiwa yang dilacak berikutnya. Anda harus memanggil setCustomVar
sebelum melacak tayangan halaman atau peristiwa. Perhatikan bahwa cakupan default Variabel Kustom adalah cakupan halaman.
Menggunakan Pelacakan E-commerce
Ada 4 metode yang Anda gunakan untuk mengaktifkan pelacakan E-commerce di aplikasi:
addTransaction
addItem
trackTransactions
clearTransactions
Memanggil addTransaction
dan addItem
akan menambahkan transaksi atau item ke buffer E-commerce internal, tempat lebih banyak item dan transaksi dapat ditambahkan. Hanya saat memanggil trackTransactions
, transaksi dan item akan dikirim ke dispatcher dan diantrekan untuk dikirim ke Google Analytics.
Untuk menghapus buffer, Anda dapat memanggil metode clearTransactions
.
Catatan: fungsi ini tidak mengingat transaksi apa pun yang sebelumnya dikirim ke dispatcher atau transaksi apa pun yang telah dikumpulkan oleh Google Analytics.
Kode contoh berikut dapat Anda gunakan untuk memulai. Kami berasumsi bahwa metode
onPurchaseCompleted
dipanggil saat pembelian dikonfirmasi atau
ditolak.
/** * The purchase was processed. We will track the transaction and its associated line items * now, but only if the purchase has been confirmed. * * @param purchase A PurchaseObject containing all of the transaction information needed to * send the ecommerce hit to Google Analytics. */ public void onPurchaseCompleted(PurchaseObject purchase) { tracker.addTransaction(new Transaction.Builder( purchase.getTransactionId(), purchase.getTotal()) .setStoreName(purchase.getStoreName()) .setTotalTax(purchase.getTotalTax()) .setShippingCost(purchase.getShippingCost()) .build()); for (PurchaseLineItem lineItem : purchase.getLineItems()) { tracker.addItem(new Item.Builder( purchase.getTransactionId(), lineItem.getItemSKU(), lineItem.getItemCost(), lineItem.getQuantity()) .setItemName(lineItem.getItemName()) .setItemCategory(lineItem.getItemCategory()) .build()); } if (purchase.isConfirmed()) { tracker.trackTransactions(); } else { // The purchase was denied or failed in some way. We need to clear out // any data we've already put in the Ecommerce buffer. tracker.clearTransactions(); } }
Untuk informasi selengkapnya tentang E-commerce, lihat Panduan Pelacakan E-commerce.
Anonimkan IP
Untuk menganonimkan informasi IP pengguna, gunakan metode setAnonymizeIp
.
Tindakan ini akan memberi tahu Google Analytics untuk menganonimkan informasi yang dikirim oleh SDK dengan menghapus octet terakhir alamat IP sebelum penyimpanannya.
Anda dapat memanggil setAnonymizeIp
kapan saja.
Menetapkan Frekuensi Sampel
Anda dapat menetapkan frekuensi sampel menggunakan metode setSampleRate
.
Jika aplikasi Anda menghasilkan banyak traffic Analytics, menetapkan frekuensi sampel dapat mencegah pembuatan laporan menggunakan data sampel. Pengambilan sampel terjadi secara konsisten pada seluruh pengguna unik, sehingga tercipta integritas dalam tren dan pelaporan saat frekuensi sampel diaktifkan.
Metode setSampleRate
menerima satu parameter int
. Nilai yang valid untuk parameter tersebut adalah bilangan bulat antara 0 dan 100, inklusif.
Rasio 0 menonaktifkan pembuatan hit, sedangkan rasio 100 mengirim semua data ke Google Analytics.
Sebaiknya panggil setSampleRate
sebelum memanggil metode pelacakan apa pun.
Anda dapat mempelajari pengambilan sampel lebih lanjut dari Panduan Konsep Pengambilan Sampel.
Mengelompokkan Hit
Untuk menghemat overhead koneksi dan baterai, sebaiknya kelompokkan permintaan pelacakan Anda. Anda dapat memanggil dispatch
pada objek pelacakan kapan pun Anda ingin membuat permintaan batch, dan Anda dapat melakukannya secara manual atau pada interval waktu tertentu.
Masalah Umum
Melacak Kampanye
SDK mendukung dua jenis pelacakan kampanye.
- Pelacakan Kampanye Google Play – Memungkinkan Anda melacak rujukan penginstalan melalui Google Play.
- Pelacakan Kampanye Umum – Memungkinkan Anda melacak kampanye apa pun yang merujuk pengguna ke aplikasi Anda.
Pelacakan Kampanye Google Play
Rilis OS Android 1.6 mendukung penggunaan parameter URL referrer
dalam link download ke Google Play. Google Analytics SDK untuk Android menggunakan parameter ini untuk mengisi informasi kampanye secara otomatis di Google Analytics untuk aplikasi Anda. Hal ini memungkinkan sumber penginstalan aplikasi dicatat dan dikaitkan dengan tayangan halaman dan peristiwa di masa mendatang, yang dapat berguna untuk mengukur keefektifan iklan tertentu untuk aplikasi Anda, misalnya.
Agar pelacakan rujukan berfungsi, Anda harus menambahkan cuplikan kode berikut ke file manifes AndroidManifest.xml
project:
<!-- Used for install referrer tracking --> <receiver android:name="com.google.android.apps.analytics.AnalyticsReceiver" android:exported="true"> <intent-filter> <action android:name="com.android.vending.INSTALL_REFERRER" /> </intent-filter> </receiver>
Untuk menyiapkan pelacakan kampanye Google Analytics melalui Google Play, gunakan Pembuat URL di bawah ini untuk membuat link rujukan. Gunakan link ini untuk mengarahkan pengguna ke aplikasi Anda. Analytics SDK akan secara otomatis mengurai dan mencatat informasi rujukan serta mengisinya dalam laporan Analytics.
Untuk membuat link rujukan, Anda dapat menggunakan Pembuat URL Kampanye Google Play. Nama Paket, Sumber Kampanye, Media Kampanye, dan Nama Kampanye wajib diisi. Untuk deskripsi terperinci dari setiap parameter, lihat tabel di bawah.
Pelacakan Kampanye Umum
Dengan SDK Google Analytics versi 1.3 untuk Android, kini Anda dapat melacak kampanye untuk sumber selain Google Play. Misalnya, jika ingin mengetahui bahwa aplikasi Anda diluncurkan dari link di sebuah iklan, Anda dapat memeriksa informasi rujukan kampanye dalam intent yang menyebabkan aplikasi Anda diluncurkan, lalu menyimpan informasi kampanye tersebut di Google Analytics.
Untuk menetapkan informasi rujukan kampanye, gunakan metode setReferrer
seperti berikut:
tracker.setReferrer(referrer);
Ada dua batasan untuk menggunakan fitur ini. Pertama, Anda harus memanggil startNewSession
sebelum memanggil
setReferrer
. Anda harus melakukannya karena database SQLite yang digunakan oleh Google Analytics tidak disiapkan sebelum
memanggil startNewSession
dan setReferrer
memerlukan database tersebut. Jika belum memanggil
startNewSession
, Anda akan mendapatkan IllegalStateException
.
Batasan kedua adalah string rujukan yang diteruskan ke setReferrer
harus mengikuti format tertentu.
Parameter ini harus berupa sekumpulan parameter URL dan harus menyertakan setidaknya satu parameter gclid atau salah satu parameter utm_campaign, utm_medium, dan utm_source. Dalam kasus terakhir, parameter tersebut juga dapat memiliki parameter utm_term dan utm_content.
Parameter gclid adalah bagian dari fitur pemberian tag otomatis yang secara otomatis menautkan Google Analytics ke Google Ads. Contoh rujukan kampanye yang menggunakan pemberian tag otomatis mungkin terlihat seperti ini:
referrer = “gclid=gclidValue”;
String rujukan kampanye manual mungkin terlihat seperti:
referrer = “utm_campaign=campaign&utm_source=source&utm_medium=medium&utm_term=term&utm_content=content”;
Jika Anda meneruskan string perujuk dengan format yang salah ke setReferrer
, informasi perujuk tidak akan berubah dan Anda akan mendapatkan nilai return salah. Nilai return true menunjukkan bahwa perujuk telah diperbarui dan akan ditambahkan ke setiap hit ke depannya.
Perhatikan juga bahwa sesi baru akan dimulai saat Anda memanggil setReferrer dan menampilkan true.
Parameter link rujukan
Parameter | Wajib | Deskripsi | Contoh |
---|---|---|---|
utm_campaign |
Ya | Nama kampanye; digunakan untuk analisis kata kunci guna mengidentifikasi promosi produk atau kampanye strategis tertentu | utm_campaign=spring_sale |
utm_source |
Ya | Sumber kampanye; digunakan untuk mengidentifikasi mesin telusur, newsletter, atau sumber lainnya | utm_source=google |
utm_medium |
Ya | Media kampanye; digunakan untuk mengidentifikasi media seperti email atau biaya per klik (cpc) | utm_medium=cpc |
utm_term |
Tidak | Istilah kampanye; digunakan dengan penelusuran berbayar guna menyediakan kata kunci untuk iklan | utm_term=running+shoes |
utm_content |
Tidak | Konten kampanye; digunakan untuk pengujian A/B dan iklan bertarget konten untuk membedakan iklan atau link yang mengarah ke URL yang sama |
utm_content=logolink
utm_content=textlink
|