يصف دليل المطوِّر هذا كيفية قياس التفاعلات الاجتماعية باستخدام
الإصدار 4 من حزمة تطوير البرامج (SDK) لخدمة "إحصاءات Google" لنظام التشغيل Android.
نظرة عامة
يتيح لك قياس التفاعلات الاجتماعية قياس تفاعلات المستخدم من خلال العديد من أدوات مشاركة الشبكات الاجتماعية والتطبيقات المصغّرة للاقتراحات المضمَّنة في المحتوى الخاص بك.
تشمل التفاعلات الاجتماعية الحقول التالية:
اسم الحقل |
النوع |
مطلوبة |
الوصف |
شبكة اجتماعية |
String |
نعم |
الشبكة الاجتماعية التي يتفاعل معها المستخدم (على سبيل المثال، Facebook وGoogle+ وTwitter وغير ذلك). |
الإجراء الاجتماعي |
String |
نعم |
الإجراء الاجتماعي الذي تم اتخاذه (على سبيل المثال، إبداء الإعجاب، المشاركة، 1+، وما إلى ذلك). |
الاستهداف الاجتماعي |
String |
لا |
المحتوى الذي يتم اتخاذ الإجراء الاجتماعي عليه (أي مقالة أو فيديو معيّن). |
تتوفّر بيانات التفاعلات الاجتماعية التي يجمعها الإصدار 4 من حزمة تطوير البرامج (SDK) لخدمة "إحصاءات Google" لنظام التشغيل Android من خلال التقارير المخصّصة وواجهة برمجة التطبيقات الأساسية لإعداد التقارير.
التنفيذ
لإرسال تفاعل اجتماعي إلى "إحصاءات Google"، استخدِم SocialBuilder
كما في المثال التالي:
// 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());
راجِع
الإعداد المتقدّم للحصول على تفاصيل عن طريقة getTracker
.
الاطّلاع على مقتطف رمز من نموذج التطبيق
المقتطف التالي هو مثال Fragment
يُرسِل تفاعلاً اجتماعيًا:
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();
}
}