[發明專利]一種異常定位處理方法、裝置、電子設備及存儲介質在審
| 申請號: | 202110730145.7 | 申請日: | 2021-06-29 |
| 公開(公告)號: | CN113791966A | 公開(公告)日: | 2021-12-14 |
| 發明(設計)人: | 于衛國 | 申請(專利權)人: | 五八有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F11/07 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司 11319 | 代理人: | 呂俊秀 |
| 地址: | 300450 天津市濱海新區經濟技術開*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 異常 定位 處理 方法 裝置 電子設備 存儲 介質 | ||
本發明提供了一種異常定位處理方法、裝置、電子設備及存儲介質。所述方法,包括:通過自定義的Gradle插件,獲取所述目標工程中指定類型的目標文件,所述指定類型的目標文件包括class文件、jar文件、arr文件中的至少一種;遍歷每個所述目標文件中的每個class文件,并獲取每個所述class文件的class相關信息;所述class相關信息至少包括所述class文件所調用對象的對象標識,所述對象包括方法、接口中的至少一種;基于每個所述class文件的class相關信息,根據所述Gradle插件中配置的異常定位條件,獲取符合所述異常定位條件的目標class文件,所述異常定位條件至少包括調用指定對象。
技術領域
本發明涉及計算機技術領域,尤其涉及一種異常定位處理方法、裝 置、電子設備及存儲介質。
背景技術
一個應用程序通常會集成很多第三方aar(Android Archive,是一個 Android庫項目的二進制歸檔文件)和集團內部SDK提供的一些能力,例如 推送、認證、直播等功能,但是,應用程序運行過程中,經常會遇到一些 崩潰問題,而且可能會存在一些崩潰問題的原因無法通過堆棧信息進行快 速定位。
相關技術中,為了定位崩潰問題原因,一般會將apk(AndroidPackage, Android安裝包)使用反編譯工具反編譯后進行全局搜索,但是,當apk文 件較大時反編譯工具會報出內存泄露問題或者由于apk加固導致反編譯失 敗。同樣會影響發生崩潰時的快速定位和崩潰修復。
發明內容
本發明實施例提供一種異常定位處理方法、裝置、電子設備及存儲介 質,以解決現有的崩潰異常定位不準確的問題。
為了解決上述技術問題,本發明是這樣實現的:
第一方面,本發明實施例提供了一種異常定位處理方法,包括:
通過自定義的Gradle插件,獲取所述目標工程中指定類型的目標文 件,所述指定類型的目標文件包括class文件、jar文件、arr文件中的至少一 種;
遍歷每個所述目標文件中的每個class文件,并獲取每個所述class文件 的class相關信息;所述class相關信息至少包括所述class文件所調用對象 的對象標識,所述對象包括方法、接口中的至少一種;
基于每個所述class文件的class相關信息,根據所述Gradle插件中配置 的異常定位條件,獲取符合所述異常定位條件的目標class文件,所述異常 定位條件至少包括調用指定對象。
可選地,在所述通過自定義Gradle插件,獲取所述目標工程中指定類 型的目標文件的步驟之前,還包括:
創建一自定義Gradle插件工程,并在所述Gradle插件工程中創建一個 Gradle插件類;
在所述Gradle插件類中創建一個Transform類,以獲取工程中指定類型 的目標文件;
所述Transform類中至少還包括目標邏輯代碼,所述目標邏輯代碼執行 以遍歷每個所述目標文件中的每個class文件,并獲取每個所述class文件的 class相關信息;基于每個所述class文件的class相關信息,根據所述Gradle 插件中配置的異常定位條件,獲取符合所述異常定位條件的目標class文 件;
在所述目標工程中引入所述Gradle插件工程,并在所述Gradle插件工 程中配置針對所述目標工程的異常定位條件。
可選地,所述基于每個所述class文件的class相關信息,根據所述 Gradle插件中配置的異常定位條件,獲取符合所述異常定位條件的目標 class文件的步驟,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于五八有限公司,未經五八有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110730145.7/2.html,轉載請聲明來源鉆瓜專利網。





