[發明專利]基于Android終端的用戶數據采集的方法及系統在審
| 申請號: | 201810306412.6 | 申請日: | 2018-04-08 |
| 公開(公告)號: | CN108549537A | 公開(公告)日: | 2018-09-18 |
| 發明(設計)人: | 楊永強;吳江林;謝榮生 | 申請(專利權)人: | 北京極數科技有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41;G06F9/445 |
| 代理公司: | 北京萬思博知識產權代理有限公司 11694 | 代理人: | 高鎮 |
| 地址: | 100102 北京*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用戶數據 采集 編譯 終端 動態代理 用戶行為 干預 申請 | ||
本申請公開了一種基于Android終端的用戶數據采集的方法及系統,其中,包括如下步驟:在Android系統對APP開始編譯時,基于動態代理java agent進行干預,修改目標class文件,利用編譯期中被修改的目標class文件,進行用戶數據采集。本發明能夠對用戶行為的用戶數據進行高效自動的采集。
技術領域
本申請涉及Android終端技術領域,特別是涉及一種基于Android終端的用戶數據采集的方法及系統。
背景技術
近年來,移動終端的用戶逐年增加,用戶數已遠遠超過PC,并且人們已經習慣用移動終端的app來幫助完成生活和工作中的各種問題,比如聊天,購物,支付等等。對于特定的app,通過用戶分析,可以深度挖掘用戶在使用該app過程中的需求,從而給用戶提供更好的體驗。
目前,基于Android終端的關于用戶行為的用戶數據采集,一般是通過軟件開發人員在需要采集數據的事件觸發位置進行手動多次多點的添加事件代碼來實現的。
這種方式存在的弊端是:由于用戶的行為非常多,并且Android app實現的功能也越來越多,因此,軟件開發人員需要添加的代碼就會非常多,并且,大部分都是重復代碼,比如一個點擊事件的代碼,app的每個頁面都有點擊事件,那么軟件開發人員就需要在每個頁面觸發點擊事件的位置添加上重復的數據采集代碼。這使軟件開發人員陷入繁雜重復的添加采集數據代碼的工作中。
發明內容
本申請旨在提出一種基于Android終端的用戶數據采集的方法及系統,基于本發明,能夠對用戶行為的用戶數據進行高效自動的采集。
根據本申請的一個方面,提供了一種基于Android終端的用戶數據采集的方法,包括如下步驟:在Android系統對APP編譯階段,采用動態代理java agent,與編譯器進行交互,指示編譯器通過修改目標class文件添加預定事件埋點并生成對應該事件的機器代碼,完成對用戶數據采集。
可選地,上述Android終端的用戶數據采集的方法中,當編譯開始時,通過插件啟動所述動態代理java agent。
可選地,上述Android終端的用戶數據采集的方法中,包括如下步驟:在所述Android系統開始編譯APP時,通過gradle插件啟動動態代理java agent;所述java agent修改目標class文件;判斷是否修改成功,若是,則編譯成功,無埋點成功;若否,則編譯成功,無埋點失敗;在埋點成功的情況下,基于被修改的目標class文件,進行用戶數據采集。
可選地,上述Android終端的用戶數據采集的方法中,所述java agent修改目標class文件包括如下步驟:創建InvocationHandler實例;將所述InvocationHandler實例賦值給SecurityManager.class的packageAccessLock變量;令ProcessBuilder類通過反射獲取所述InvocationHandler的實例;ProcessBuilder類執行start方法,啟動dx.bat的進程;使用ClassFileTransformer來實現對com.android.dx.command.dexer.Main類的processClass方法進行修改;將修改好的目標Class文件編譯成dex文件。
可選地,上述Android終端的用戶數據采集的方法中,通過ASM使ClassFileTransformer實現對com.android.dx.command.dexer.Main類的processClass方法進行修改。
第二方面,本發明還公開了一種基于Android終端的用戶數據采集的系統,包括:用于在Android系統對APP編譯階段,采用動態代理java agent,與編譯器進行交互,指示編譯器通過修改目標class文件添加預定事件埋點并生成對應該事件的機器代碼,完成對用戶數據采集。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京極數科技有限公司,未經北京極數科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810306412.6/2.html,轉載請聲明來源鉆瓜專利網。





