[發明專利]一種移動端無碼埋點解決方法有效
| 申請號: | 202010176659.8 | 申請日: | 2020-03-13 |
| 公開(公告)號: | CN111352849B | 公開(公告)日: | 2023-05-16 |
| 發明(設計)人: | 吳鐘侑;顧湘余;韓晟 | 申請(專利權)人: | 杭州趣維科技有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 杭州橙知果專利代理事務所(特殊普通合伙) 33261 | 代理人: | 賀龍萍 |
| 地址: | 310012 浙江省杭州市西湖*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 移動 端無碼埋點 解決方法 | ||
本發明公開了一種移動端無碼埋點解決方法。它具體包括如下步驟:在安卓系統app端接入信息上報模塊;通過編譯期無碼插樁技術對app中所有函數的進入和退出插入代碼片段,并為每個函數生成不一樣的標識符用于區分;在服務器端配置需要上報的唯一埋點標識符,在app啟動時獲取服務器需要上報埋點標識符,保存到本地文件A中;app程序運行時,每個函數在進入和退出時,會先運行插樁的代碼塊,根據判斷是否和本地文件A中需要上報的埋點標識符相符合,如果符合則上報到服務器端;服務器端分析是否函數運行異常。本發明的有益效果是:幫助開發者實現無碼埋點,在代碼編譯期就自動實現埋入上報代碼,協助開發者統計數據查找問題。
技術領域
本發明涉及APP應用程序處理相關技術領域,尤其是指一種移動端無碼埋點解決方法。
背景技術
在智能手機高速發展的今天,安卓手機機型和系統的多樣性,同一個App在市場中需要面臨各種手機機型的挑戰。手機程序在運行中出現異常數據也時有發生。為了幫助開發者快速定位問題,在程序運行中埋點也成了追蹤問題的方式之一。埋點:為了記錄程序的執行動作或結果數據而做的統計。
現有的Android?App開發埋點需要開發者在開發過程中,手動在一些程序函數中加入統計代碼,上報給服務器端。一旦服務器端想要統計新的埋點數據,就不得不通過發布新的app版本來實現,且app的版本迭代需要較長的周期,無法滿足快速實統計數據驗證程序問題的需求。
發明內容
本發明是為了克服現有技術中存在上述的不足,提供了一種自動實現埋入上報的移動端無碼埋點解決方法。
為了實現上述目的,本發明采用以下技術方案:
一種移動端無碼埋點解決方法,具體包括如下步驟:
(1)在安卓系統app端接入信息上報模塊;
(2)通過編譯期無碼插樁技術對app中所有函數的進入和退出插入代碼片段,并為每個函數生成不一樣的標識符用于區分;
(3)在服務器端配置需要上報的唯一埋點標識符,在app啟動時獲取服務器需要上報埋點標識符,保存到本地文件A中;
(4)app程序運行時,每個函數在進入和退出時,會先運行插樁的代碼塊,根據判斷是否和本地文件A中需要上報的埋點標識符相符合,如果符合則整合函數標識符和函數的參數或者返回結果,上報到服務器端;
(5)服務器端根據app端上報的數據,分析是否函數運行異常。
其中:無碼指的是不需要開發者在開發過程手動編寫代碼。插樁指的是在保證程序原有邏輯完整性的基礎上,在程序中插入一些代碼片段。本方法解決的問題就是幫助開發者實現無碼埋點,在代碼編譯期就自動實現埋入上報代碼,幫助開發者讓App能夠根據服務器配置快速開始統計app程序動作或結果數據,協助開發者統計數據查找問題。
作為優選,在步驟(1)中,具體操作方法為:新建日志類LogReportUtil.java,添加靜態函數reportLog用于將采集到的程序運行信息發送給服務器。
作為優選,在步驟(2)中,具體操作方法為:通對Gradle編譯期Transform任務的Hook,在transform中創建ClassVisitor,即可對所有類文件進行編譯期字節碼無碼插樁,利用對ClassVisitor中的onMethodEnter和onMethodExit的自定義處理,成功的對App工程所有函數的進入和退出分別插入代碼片段,標識符組成方式:包路徑+類名+方法名+參數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州趣維科技有限公司,未經杭州趣維科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010176659.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種基于模型驅動的組件端口建模方法及終端
- 下一篇:一種裝配式建筑結構體系





