[發明專利]獲取Android中組件相互引用關系的方法及裝置有效
| 申請號: | 201711072168.3 | 申請日: | 2017-11-03 |
| 公開(公告)號: | CN107885501B | 公開(公告)日: | 2020-09-08 |
| 發明(設計)人: | 張磊;張文明;陳少杰 | 申請(專利權)人: | 武漢斗魚網絡科技有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京路浩知識產權代理有限公司 11002 | 代理人: | 王瑩;吳歡燕 |
| 地址: | 430000 湖北省武漢市東湖開*** | 國省代碼: | 湖北;42 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 獲取 android 組件 相互 引用 關系 方法 裝置 | ||
本發明提供獲取Android中組件相互引用關系的方法及裝置,所述方法包括:獲取目標Android項目中所有組件的編譯腳本文件;分別對各所述編譯腳本文件進行解析,獲取每個組件的依賴關系集合;對所述每個組件的依賴關系集合中的每項依賴關系執行以下步驟:分析該依賴關系所包含的目標組件,若所述目標組件的依賴關系集合中存在包含該組件的依賴關系,則獲知所述目標組件與該組件之間存在相互引用關系。本發明能夠快速給出組件之間的相互引用關系,避免了人工逐個打開組件并分析依賴關系,極大地提高了開發人員定位組件相互引用關系的效率,降低了人力成本的開銷。
技術領域
本發明涉及互聯網開發技術領域,更具體地,涉及獲取Android中組件相互引用關系的方法及裝置。
背景技術
隨著互聯網開發技術的發展,直播平臺客戶端常常需要通過組件以及若干個組件之間的配合來實現相應的功能,以滿足用戶需求。
在直播平臺Android客戶端組件化開發的過程中,開發人員會將該Android客戶端項目的實現分成若干個組件,對組件進行分開和隔離,每個組件會是一個獨立的功能模塊,在每個組件模塊內部可能又會引入第三方開源組件或者其他組件。當組件之間發生了相互引用時,例如,當組件a引用組件b并且組件b也引用組件a的時,編譯器就會無限循環引用下去,會導致編譯器無法正常運行下去,進而導致編譯失敗。
開發人員要找到編譯失敗的原因,首先需要通過逐個打開和分析每個組件的配置文件以梳理出組件之間錯綜復雜的依賴關系,然后根據梳理出的依賴關系定位哪兩個組件之間進行了相互引用,這項工作通常是一個非常耗時耗力的過程,尤其是在組件數量較多的情形下,會導致開發效率低下。
發明內容
為了能夠解決現有實現直播平臺Android客戶端組件化的過程中易出現的定位組件相互引用關系效率低下的問題,本發明提供獲取Android系統組件相互引用關系的方法及裝置。
根據本發明的一個方面,提供獲取Android中組件相互引用關系的方法,包括:
S1,獲取目標Android項目中所有組件的編譯腳本文件;
S2,分別對各所述編譯腳本文件進行解析,獲取每個組件的依賴關系集合;
S3,針對所述每個組件的依賴關系集合執行以下步驟:
順序取出當前組件的依賴關系集合中每項依賴關系,并執行以下步驟直至所述當前組件的依賴關系集合遍歷完成:分析當前依賴關系所包含的目標組件,若所述目標組件的依賴關系集合中存在包含當前組件的依賴關系,則獲知所述目標組件與當前組件之間存在相互引用關系。
其中,所述步驟S2進一步包括:
分別對各個組件的編譯腳本文件執行以下步驟:
通過調用readLine方法獲取當前組件的編譯腳本文件中每一行的內容信息;
調用contains(“dependencies”)函數以判斷當前行的內容信息中是否包含關鍵字dependencies,若不包含則開始讀取下一行數據,直到某一行中包含關鍵字dependencies時開始讀取“dependencies{”后的依賴關系信息,直至讀取到“}”時為止;
將所讀取到的依賴關系信息存儲至一個集合中。
其中,所述步驟S2進一步包括:
分別對各個組件的編譯腳本文件執行以下步驟:
通過調用file類中的readAll方法將當前組件的編譯腳本文件中的所有內容信息讀取到內存中;
調用indexOf(“dependencies{”)函數以獲取所述內容信息中出現“dependencies{”的索引值index;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于武漢斗魚網絡科技有限公司,未經武漢斗魚網絡科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711072168.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種具有散熱功能的輪胎鋼圈
- 下一篇:一種結構強度高的輪胎鋼圈





