[發明專利]一種應用層接口的動態注冊方法及相關裝置有效
| 申請號: | 201910242280.X | 申請日: | 2019-03-28 |
| 公開(公告)號: | CN109960597B | 公開(公告)日: | 2023-08-08 |
| 發明(設計)人: | 周志剛 | 申請(專利權)人: | 深圳耐看科技有限公司 |
| 主分類號: | G06F9/54 | 分類號: | G06F9/54 |
| 代理公司: | 深圳市恒程創新知識產權代理有限公司 44542 | 代理人: | 趙愛蓉 |
| 地址: | 518000 廣東省深圳市南山區粵*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 應用 接口 動態 注冊 方法 相關 裝置 | ||
本申請實施例公開了一種應用層接口的動態注冊方法及相關裝置,用于更加靈活的實現接口的注冊,有利于系統的維護。本申請實施例方法包括:定義第一數組,所述第一數組用于列舉共享對象SO文件中所有對應用層提供的接口信息,所述接口信息包括所述應用層對應的接口名稱和接口函數;在所述SO文件中編寫一個單件類,所述單件類用于管理所述第一數組中的接口函數;遍歷所述SO文件中的所有接口函數,并確定是否存在目標接口函數在所述應用層中有對應的接口函數,所述目標函數包含于所述SO文件中的所有接口函數;若存在,則將所述目標接口函數記錄在待注冊數組中,并注冊所述目標接口函數。
技術領域
本申請涉及軟件開發領域,尤其涉及一種應用層接口的動態注冊方法及相關裝置。
背景技術
隨著Android系統越來越普及,為了實現Android系統的高性能,安全性,功能復用性,會將一些通用的底層功能編寫成共享對象(SO,share?object)文件,需要理解的是,Android系統中的SO文件是動態鏈接庫,是二進制文件,即可執行可關聯的文件(executable?and?linking?format,ELF),使得Android系統可以更為獨立并且具備高性能和安全性。
實際應用中,由于SO文件的通用型和功能的完善性,可以增加很多接口來提供豐富多樣的功能。例如對于直播應用來說,會將網絡接口的鑒權庫編寫成獨立的SO文件,提供服務器鑒別客戶端的應用程序編程接口(application?programming?interface,API)的請求是否是合法的。然而隨著鑒權庫的功能的逐漸完善,接口也在不斷增多。而每增加一個新的接口,所有使用了此SO的應用都必須實現所有的接口,即使用不到該接口也必須實現對應的接口,方式很僵化且不利于系統的維護,因此如何實現接口的動態注冊,即實現應用層需要存在的接口才進行注冊,是一個需要解決的問題。
發明內容
本申請實施例提供了一種應用層接口的動態注冊方法及相關裝置,用于更加靈活的實現接口的注冊,有利于系統的維護。
本申請實施例的第一方面提供了一種應用層接口的動態注冊方法,應用于Android系統,包括:定義第一數組,所述第一數組用于列舉共享對象SO文件中所有對應用層提供的接口信息,所述接口信息包括所述應用層對應的接口名稱和接口函數;在所述SO文件中編寫一個單件類,所述單件類用于管理所述第一數組中的接口函數;遍歷所述SO文件中的所有接口函數,并確定是否存在目標接口函數在所述應用層中有對應的接口函數,所述目標函數包含于所述SO文件中的所有接口函數;若存在,則將所述目標接口函數記錄在待注冊數組中,并注冊所述目標接口函數。
在一種可能的實施例中,所述定義第一數組包括:調用所述Andriod系統中的存儲結構,所述存儲結構用于存儲所述SO文件中的所有接口函數,所述存儲結構包括變量name、變量signature和變量fnPtr,所述變量name用于表示所述應用層中函數的名稱,所述變量signature用于表示所述應用層中函數的參數和返回值類型,所述變量fnPtr用于表示指向所述SO文件中接口函數的函數指針;根據所述存儲結構定義所述第一數組,所述第一數組包括第一變量至第三變量,所述第一變量用于表示第一函數的名稱,所述第一函數包含于所述應用層中函數,所述第二變量用于表示所述第一函數對應于所述SO文件中的接口名稱,所述第三變量用于表示所述接口名稱對應的接口函數的參數和返回值類型。
在一種可能的實施例中,所述遍歷所述SO文件中的所有接口函數,并確定是否存在目標接口函數在所述應用層中有對應的接口函數包括:獲取所述應用層的類;基于循環函數,根據所述應用層的類和所述單件類遍歷所述SO文件中的所有接口函數,以確定是否存在目標接口函數在所述應用層中有對應的接口函數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳耐看科技有限公司,未經深圳耐看科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910242280.X/2.html,轉載請聲明來源鉆瓜專利網。





