Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Bu geliştirici kılavuzunda, uygulamanızdaki etkinlikleri ölçmek amacıyla Android için Google Analytics SDK v4'ün nasıl kullanılacağı açıklanmaktadır.
Genel bakış
Etkinlikler, bir kullanıcının uygulamanızın etkileşimli bileşenleriyle (ör. düğmelere basma veya oyundaki belirli bir öğenin kullanımı) etkileşimi hakkında veri toplamak için faydalı bir yöntemdir.
Bir etkinlik, bir kullanıcının uygulama içeriğinizle etkileşimini açıklamak için kullanabileceğiniz dört alandan oluşur:
Alan adı
Tür
Gerekli
Açıklama
Kategori
String
Evet
Etkinlik kategorisi
İşlem
String
Evet
Etkinlik işlemi
Şirket
String
Hayır
Etkinlik etiketi
Değer
Long
Hayır
Etkinlik değeri
Uygulama
Google Analytics'e bir etkinlik göndermek için aşağıdaki örnekte gösterildiği gibi HitBuilders.EventBuilder kullanın ve isabeti gönderin:
// Get tracker.
Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
TrackerName.APP_TRACKER);
// Build and send an Event.
t.send(new HitBuilders.EventBuilder()
.setCategory(getString(categoryId))
.setAction(getString(actionId))
.setLabel(getString(labelId))
.build());
Etkileşim dışı isabetler ve bunların ne zaman kullanılacağı hakkında daha fazla bilgi için Analytics Yardım Merkezi'ndeki
etkileşim dışı etkinlikler hakkındaki makaleyi okuyun.
Örnek Uygulamadan bir kod snippet'ine bakın
Aşağıdaki snippet, etkinlik gönderen bir Fragment örneğini göstermektedir:
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 com.google.android.apps.mobileplayground.AnalyticsSampleApp.TrackerName;
import com.google.android.gms.analytics.GoogleAnalytics;
import com.google.android.gms.analytics.HitBuilders;
import com.google.android.gms.analytics.Tracker;
/**
* Class to exercise Event hits.
*/
public class EventFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View view = inflater.inflate(R.layout.event, container, false);
setupEvent(view, R.id.video1Play, R.string.videoCategory, R.string.videoPlay, R.string.video1);
setupEvent(view, R.id.video1Pause, R.string.videoCategory, R.string.videoPause,
R.string.video1);
setupEvent(view, R.id.video2Play, R.string.videoCategory, R.string.videoPlay, R.string.video2);
setupEvent(view, R.id.video2Pause, R.string.videoCategory, R.string.videoPause,
R.string.video2);
setupEvent(view, R.id.book1View, R.string.bookCategory, R.string.bookView, R.string.book1);
setupEvent(view, R.id.book1Share, R.string.bookCategory, R.string.bookShare, R.string.book1);
final Button dispatchButton = (Button) view.findViewById(R.id.eventDispatch);
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().getApplicationContext()).dispatchLocalHits();
}
});
return view;
}
private void setupEvent(View v, int buttonId, final int categoryId, final int actionId,
final int labelId) {
final Button pageviewButton = (Button) v.findViewById(buttonId);
pageviewButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// Get tracker.
Tracker t = ((AnalyticsSampleApp) getActivity().getApplication()).getTracker(
TrackerName.APP_TRACKER);
// Build and send an Event.
t.send(new HitBuilders.EventBuilder()
.setCategory(getString(categoryId))
.setAction(getString(actionId))
.setLabel(getString(labelId))
.build());
}
});
}
}