Panduan developer ini menjelaskan cara mengukur interaksi sosial menggunakan
Google Analytics SDK v4 untuk Android.
Ringkasan
Pengukuran interaksi sosial memungkinkan Anda mengukur interaksi pengguna
dengan berbagai widget rekomendasi dan berbagi jaringan sosial yang disematkan di
konten Anda.
Interaksi sosial memiliki kolom berikut:
Nama Kolom |
Jenis |
Wajib |
Deskripsi |
Jaringan Sosial |
String |
Ya |
Jaringan sosial yang digunakan pengguna untuk berinteraksi (misalnya, Facebook, Google+, Twitter, dll.). |
Tindakan Sosial |
String |
Ya |
Tindakan sosial yang diambil (misalnya, Suka, Bagikan, +1, dsb.). |
Target Sosial |
String |
Tidak |
Konten tempat tindakan sosial dilakukan (yaitu
artikel atau video tertentu). |
Data interaksi sosial yang dikumpulkan oleh Google Analytics SDK v4 untuk
Android tersedia melalui laporan kustom dan
Core Reporting API.
Penerapan
Untuk mengirim interaksi sosial ke Google Analytics, gunakan
SocialBuilder
seperti contoh berikut:
// Get tracker.
Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
TrackerName.APP_TRACKER);
// Build and send social interaction.
t.send(new HitBuilders.SocialBuilder()
.setNetwork(getSocialNetwork())
.setAction(getSocialAction())
.setTarget(getSocialTarget())
.build());
Lihat Konfigurasi Lanjutan untuk mengetahui detail tentang metode getTracker
.
Melihat Cuplikan Kode dari Contoh Aplikasi
Cuplikan berikut adalah contoh Fragment
yang mengirimkan
interaksi sosial:
package com.google.android.apps.mobileplayground;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import com.google.android.apps.mobileplayground.AnalyticsSampleApp.TrackerName;
import com.google.android.apps.mobileplayground.MobilePlayground.UserInputException;
import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.HitBuilders;
import com.google.android.gms.analytics.Tracker;
/**
* Class to exercise Social hits.
*/
public class SocialFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View view = inflater.inflate(R.layout.social, container, false);
final Button sendButton = (Button) view.findViewById(R.id.socialSend);
sendButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
// Get tracker.
Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
TrackerName.APP_TRACKER);
// Build and send social interaction.
t.send(new HitBuilders.SocialBuilder()
.setNetwork(getSocialNetwork())
.setAction(getSocialAction())
.setTarget(getSocialTarget())
.build());
} catch (UserInputException e) {
e.printStackTrace();
}
}
});
final Button dispatchButton = (Button) view.findViewById(R.id.socialDispatch);
dispatchButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Manually start a dispatch (Unnecessary if the tracker has a dispatch interval)
GoogleAnalytics.getInstance(getActivity().getBaseContext()).dispatchLocalHits();
}
});
return view;
}
private String getSocialNetwork() throws UserInputException {
String result =
((EditText) getView().findViewById(R.id.editSocialNetwork)).getText().toString().trim();
if (result.length() == 0) {
throw new UserInputException(getString(R.string.socialNetworkWarning));
}
return result;
}
private String getSocialAction() throws UserInputException {
String result =
((EditText) getView().findViewById(R.id.editSocialAction)).getText().toString().trim();
if (result.length() == 0) {
throw new UserInputException(getString(R.string.socialActionWarning));
}
return result;
}
private String getSocialTarget() {
return ((EditText) getView().findViewById(R.id.editSocialTarget)).getText().toString().trim();
}
}