Android埋點技術(shù)探索

1.代碼埋點:

埋點用于統(tǒng)計分析功能孩子操作的使用頻率與使用習慣.
統(tǒng)一定義一系列常量字符串來標識操作。因為可能埋的點比較多,上傳記錄數(shù)據(jù)量較大,標識字符串不應(yīng)該過長.多個屬性"等符號分割拼接.
封裝類包含保存,讀取到sp文件的方法。sp也可以換成數(shù)據(jù)庫.
SP的讀寫操作可能有線程并發(fā)問題
方法原子加鎖ReadWriteLock。
http://www.cnblogs.com/liuling/p/2013-8-21-03.html
在具體的事件觸發(fā)點調(diào)用TASK類中記錄方法。

2.自動化埋點

http://blog.csdn.net/gykimo/article/details/24772853
原理是:定義一個BaseActivity,其他Activity都繼承。
監(jiān)聽Activity的生命周期方法,判斷可見狀態(tài)。界面使用時長的埋點.
監(jiān)聽Activity的onDispatch()事件分發(fā)方法,返回true代表子View消費了事件。遍歷DicorView,找到具體子View,記錄子View路徑來標識。
通過廣播,將數(shù)據(jù)收集,統(tǒng)一處理。(覺得可以不必通過廣播,但是通過消息隊列能避免并發(fā)問題)
定義需要監(jiān)聽的子View路徑,判斷需要監(jiān)聽才產(chǎn)生日志。

存在的問題是:
某些View的路徑一樣(隱藏控件、彈出窗口或者浮動窗口),不同API版本(4.0及以下與4.0上)同一個View路徑不同。
某些Activity必須繼承一些特殊的Activity類,如XWalkView的XWalkActivity.
UI路徑掃描工作大。UI變化頻繁的話,修改埋點View路徑列表代價大。
其他未知問題,總感覺在復(fù)雜的項目頁面中還會有其他問題。。。這個就要入局看了,但是應(yīng)該不是大問題。

http://blog.csdn.net/HHcoco/article/details/52250627
這個補充如何標識每個View,給每個View設(shè)置ID。
還有在Fragment中如何得到觸摸點的坐標。

3.第三方埋點(諸葛IO,GrowingIO等)

參考http://blog.csdn.net/hhcoco/article/details/52243079

4.上傳時機

在主Activity的onResume()中開啟上傳線程,一個小時內(nèi)只開啟一次。
其他想法,用定時器,或者Service.

5.有建議的渴求告知?。?!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容