自定义事件可以实现在应用程序中埋点来统计用户的点击行为。
1.1 使用自定义事件的依赖条件
使用自定义事件功能请先在网站应用管理后台(设置->事件)中添加相应的事件后,服务器才会对相应的事件请求进行处理。
1.2 计数事件
使用计数事件需要在后台添加事件时选择“计数事件”。
1.2.1 统计发生次数
在您希望跟踪的代码部分,调用如下方法:
staticvoid TrackEvent(string eventId)
eventId
为当前统计的事件ID。
示例:统计微博应用中"转发"事件发生的次数,那么在转发的函数里调用
UmengSDK.UmengAnalytics.TrackEvent("Forward");
1.2.2 统计点击行为各属性被触发的次数
考虑事件在不同属性上的取值,可以调用如下方法:
static void TrackEvent(string eventId, Dictionary<string,string> kv)
kv
为当前事件的属性和取值(键值对,最多只能包含10个)。
示例:统计电商应用中“购买”事件发生的次数,以及购买的商品类型及数量,那么在购买的函数里调用:
Dictionary<String,String> purchase= new Dictionary<string,string>();purchase.Add("type", "book");purchase.Add("quantity", "3");UmengSDK.UmengAnalytics.TrackEvent("purchase", purchase);
1.3 计算事件
使用计算事件需要在后台添加事件时选择“计算事件”。
1.3.1 统计数值型变量的值的分布
统计一个数值类型的连续变量,用户每次触发的数值的分布情况,如事件持续时间、每次付款金额等,可以调用如下方法:
可以使用UmengAnalytics.NumberKey常量作为Key,最多添加一个
Dictionary<String,String> purchase= new Dictionary<string,string>();purchase.Add("type", "book");purchase.Add("quantity", "3");purchase.Add(UmengAnalytics.NumberKey, "888");UmengSDK.UmengAnalytics.TrackEvent("purchase", purchase);
1.3.2 统计点击次数及各属性触发次数
计算事件除能够统计数值型的参数外还具有计数事件的所有功能。详细说明。
1.4 注意事项
event_id 和 tag 不能使用特殊字符,且长度不能超过128个字节;map中的key和value 都不能使用特殊字符,key 不能超过128个字节,value 不能超过256个字节
id, ts, du是保留字段,不能作为eventId及key的名称。
每个应用至多添加500个自定义事件,每个event 的 key不能超过10个,每个key的取值不能超过1000个(不允许通过key-value结构来统计类似搜索关键词,网页链接等随机生成的字符串信息)。 如有任何问题,请联系客服qq: 800083942。
在线参数使您可以在网站上动态配置自定义key-value型的键值对。
在线参数需要在网站编辑,在程序中使用这句代码从服务器获取参数,并缓存本地。
UmengAnalytics.UpdateOnlineParamAsync("Your_App_Key");
当在项目里需要获取某个具体参数时调用:
static string GetOnlineParam(string key)
参数key为友盟服务器上事先设置好的key。
同时,我们提供了在线参数回调接口,注意此接口只在在线参数有变化的时候才会回调,实现此接接口:
UmengAnalytics.UpdateOnlineParamCompleted += OnUpdateOnlineParamCompleted; UmengAnalytics.UpdateOnlineParamAsync("Your_App_Key");void OnUpdateOnlineParamCompleted(int statusCode, OnlineParamEventArgs e){ //e.Result包含获取到的在线参数}
3. 错误统计SDK通过Application.Current.UnhandledException
捕获程序崩溃日志,并在程序下次 启动时发送到服务器。如果开发者自己捕获了错误,需要上传到友盟服务器可以调用下面方法:
publicstaticvoid TrackError(string error)//或publicstaticvoid TrackException(Exception ex)
4. 按渠道自动更新检测在网站上分渠道提交app的版本号,更新日志及openURL后,您只需添加一行代码来完成自动更新检查。 请将下面代码添加到Application_Launching
方法中,该方法会请求服务器检查最新版本。
publicvoid CheckUpdateAsync(string appkey);
手动处理更新回调:
public delegate void UpdateEventHandler(int statusCode, UpdateEventArgs e);publicstatic event UpdateEventHandler CheckUpdateCompleted;
statusCode
返回状态,0 表示服务器请求成功eUpdateEventArgs
类型实例,携带有更新信息.
如果默认的行为不满足你的需求,您可以完全自定义自动更新检查行为。步骤如下:
添加事件委托
UmengAnalytics.CheckUpdateCompleted += new UmengAnalytics.UpdateEventHandler(OnCheckUpdateCompleted); UmengAnalytics.CheckUpdateAsync(“YOUR_APP_KEY”);
处理回调函数
void OnCheckUpdateCompleted(int statusCode, UmengSDK.UpdateEventArgs e){ if (statusCode == 0 && e != null && e.update) { e.Handled = true;//如果开发者手动处理更新可以设置为true,这样SDK不会弹出更新对话框 string version = e.VersionName;//获取最新的版本号 string updateLog = e.UpdateLog;//获取更新日志 string productId = e.ProductID;//获取产品ID//To-do whatever you wanna do, since you've got everything }}