页面浏览是产品在APP埋点中经常添加的需求,并且每个页面会新增很多特有属性。神策提供了所有页面全局埋点的方法,并且可以添加特有属性。
SAConfigOptions saConfigOptions = new SAConfigOptions(SA_SERVER_URL);
//开启全埋点浏览事件
saConfigOptions.setAutoTrackEventType(SensorsAnalyticsAutoTrackEventType.APP_VIEW_SCREEN);
SensorsDataAPI.startWithConfigOptions(context, saConfigOptions);
public class MainActivity extends AppCompatActivity implements ScreenAutoTracker {@Overridepublic String getScreenUrl() {//看产品有没有单独规定url,没有就用默认getClass().getCanonicalName()return getClass().getCanonicalName();}@Overridepublic JSONObject getTrackProperties() throws JSONException {JSONObject jsonObject = new JSONObject();jsonObject.put("key", "value");//返回 $title,会覆盖默认 $title 的值,$符号基本是神策预留字段jsonObject.put("$title", "Main");return jsonObject;}
}
可以给每个Activity都增加代码可以完成每个页面都增加字段,但是这样做肯定不是很优雅。特别是当项目页面特别多的时候,很显然这样做不合理。我们可以把这些功能提到BaseActivity中。
public abstract class BaseActivity extends AppCompatActivity implements ScreenAutoTracker {protected String SCPageType = null;protected JSONObject SCJsonObject = null;/*** 返回自定义属性集合** @params: null* @return: JSONObject*/@Overridepublic JSONObject getTrackProperties() throws JSONException {if (SCJsonObject == null) SCJsonObject = new JSONObject();SCJsonObject.put("page_type", getScreenUrl());//上一层urlSCJsonObject.put("referrer_page_type", SensorsDataAPI.sharedInstance().getLastScreenUrl());return SCJsonObject;}/*** 返回当前页面的Url,用作下个页面的referrer** @params: null* @return: String*/@Overridepublic String getScreenUrl() {//当子类未设置SCPageType时,采用子类默认类名字段if (SCPageType == null) SCPageType = getClass().getCanonicalName();return SCPageType;}
}
public class MainActivity extends BaseActivity implements ScreenAutoTracker {@Overrideprotected void onCreate(Bundle savedInstanceState) {Create(savedInstanceState);setContentView(R.layout.activity_main);//设置每个页面特有字段SCPageType = "services_list";try {if (SCJsonObject == null) SCJsonObject = new JSONObject();SCJsonObject.put("key", "value");} catch (JSONException e) {e.printStackTrace();}}}
有问题和建议欢迎大家指出~
本文发布于:2024-02-04 17:14:31,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170712491457697.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |