این راهنمای توسعهدهنده نحوه اندازهگیری تعاملات اجتماعی با استفاده از Google Analytics SDK v4 برای Android را شرح میدهد.
بررسی اجمالی
اندازه گیری تعامل اجتماعی به شما امکان می دهد تا تعاملات کاربر را با ویجت های مختلف اشتراک گذاری شبکه های اجتماعی و توصیه های تعبیه شده در محتوای شما اندازه گیری کنید.
تعاملات اجتماعی دارای زمینه های زیر است:
نام زمینه | تایپ کنید | ضروری | شرح |
---|
شبکه اجتماعی | String | آره | شبکه اجتماعی که کاربر با آن در تعامل است (به عنوان مثال فیس بوک، گوگل پلاس، توییتر و غیره). |
کنش اجتماعی | String | آره | اقدام اجتماعی انجام شده (مانند لایک کردن، اشتراک گذاری، 1+ و غیره). |
هدف اجتماعی | String | خیر | محتوایی که اقدام اجتماعی روی آن انجام می شود (یعنی یک مقاله یا ویدیوی خاص). |
دادههای تعامل اجتماعی جمعآوریشده توسط Google Analytics SDK v4 برای Android از طریق گزارشهای سفارشی و Core Reporting API در دسترس است.
پیاده سازی
برای ارسال یک تعامل اجتماعی به Google Analytics، مانند مثال زیر از 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();
}
}