美文网首页程序员
App埋点实现原理

App埋点实现原理

作者: 52xpz | 来源:发表于2017-05-23 16:23 被阅读775次

    现在App埋点一般采用talkingdata或者友盟,如果要我们自己实现埋点功能,该怎么做呢?个人觉得一个好的埋点库应该具有如下功能:

    1、支持实时上报和非实时上报。

    实时上报即立马上报数据;非实时上报即上报数据不立马上报,存储到本地文件,在合适的时机再上报。

    2、实时上报支持内存缓存及上报频率。

    为了减少频繁发起网络请求的次数和流量的浪费,实时上报数据内存缓存支持设定最大缓存个数和最大缓存大小,当超过这两个阈值之一时,就直接把内存缓存的数据全部上报。支持上报频率,比如1分钟上报一次。

    3、非实时上报支持磁盘缓存和上报频率。

    因为非实时上报不要求立马上报,所以要把数据存储到本地,存储方式可以选用json、archive、数据库等;支持上报频率,比如半小时上报一次。

    4、上报时机。

    实时上报可以在调用上报接口、定时器扫描、应用程序退出、程序进后台时进行上报;非实时上报接口可以在定时器扫描、应用程序退出、程序进后台时进行上报。

    5、上报数据需要压缩后上报。

    6、上报规则支持后端可配。

    后端可以根据客户端网络类型下发不同的上报参数,比如调整最大缓存个数、上报频率等。

    7、配合aspect来上报,实现代码无侵入性。

    上报最好做到跟业务无关,配合使用aspect来实现。

    8、如何实现无痕埋点?

    iOS无埋点数据SDK实践之路

    相关文章

      网友评论

        本文标题:App埋点实现原理

        本文链接:https://www.haomeiwen.com/subject/wvxzzttx.html