Webview

对于使用Webview嵌入网页在应用内的App,我们封装了从JavaScript到Native的调用,并提供了与Native一致的统计API。

我们暂时支持Android标准Webview,我们注意到有些APP也会使用第三方Webview,比如腾讯Webview,百度Webview等,暂不支持,正在考虑支持,敬请期待!

使用方法

  • 引用mobstat.js到您的网页内,js文件获取地址:下载的SDK包demo/assets/mobstat.js
  • 对应Webview,请在webview初始化时。调用如下方法
  1. // @param context 可以是application context
  2. // @param webview
  3. // @param client 如果有绑定WebViewClient对象,需要传入;否则APP无法收到回调
  4. StatService.bindJSInterface(Context context, WebView webview, WebViewClient client);
  • 在您的HTML代码内,调用对应的API进行统计。API列表见下方。

API

具体使用方法可以参考Demo的WebDemo部分。

事件分析

无时长事件

  1. // @param eventId 事件id,需要事先在web端配置,否则无数据
  2. // @param eventLabel 事件label
  3. // @param acc 事件发生次数
  4. BaiduMobStat.onEvent(eventId, eventLabel, acc);
  5. // attributes 是以object形式传入的字典,如{'类型':'类型一', '数值': '3'}
  6. BaiduMobStat.onEventWithAttributes(eventId, eventLabel, acc, attributes);

固定时长事件

  1. // @param eventId 事件id,需要事先在web端配置,否则无数据
  2. // @param eventLabel 事件label
  3. // @param duration 单位:ms
  4. BaiduMobStat.onEventDuration(eventId, eventLabel, duration);
  5. // attributes 是以object形式传入的字典,如{'类型':'类型一', '数值': '3'}
  6. BaiduMobStat.onEventDurationWithAttributes(eventId, eventLabel, duration, attributes);

自定义时长事件

  1. // @param eventId 事件id,需要事先在web端配置,否则无数据
  2. // @param eventLabel 事件label
  3. BaiduMobStat.onEventStart(eventId, eventLabel);
  4. BaiduMobStat.onEventEnd(eventId, eventLabel);
  5. // attributes 是以object形式传入的字典,如{'类型':'类型一', '数值': '3'}
  6. BaiduMobStat.onEventEndWithAttributes(eventId, eventLabel, attributes);

页面分析

  1. // @param pageName 页面名,start和end需要匹配,且pageName相同
  2. BaiduMobStat.onPageStart(pageName);
  3. BaiduMobStat.onPageEnd(pageName);