[發明專利]一種基于安卓系統的插件加載方法及其系統在審
| 申請號: | 201410467050.0 | 申請日: | 2014-09-12 |
| 公開(公告)號: | CN104239054A | 公開(公告)日: | 2014-12-24 |
| 發明(設計)人: | 鄧裕強;梁國盛;陳家煜;潘國維;巢子良 | 申請(專利權)人: | 廣州市久邦數碼科技有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 510055 廣東省廣州市中*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 系統 插件 加載 方法 及其 | ||
技術領域
本發明涉及安卓系統插件領域,尤其涉及一種基于安卓系統的插件加載方法及其系統。
背景技術
由于android對于應用的函數量進行了限制,3.0以下最大函數量不能超過48000,3.0以上最大函數量不能超過65535,包括工程中自己編寫的代碼以及引用外部jar庫中的代碼。我們需要找到新的方式使用代碼,從而繞過android的編譯限制。android提供了DexClassLoader,用于加載外部的dex文件,通過反射的方式使用其中的類,但是這種方式無法使用在外部dex文件中定義的四大組件。
發明內容
針對現有技術的不足,本發明的目的在于提供一種基于安卓系統的插件加載方法,以資源方式動態加載dex文件的代碼,并且可以正常調用在dex文件中定義的四大組件。
本發明的另外一個目的在于提供一種基于安卓系統的插件加載系統。
為實現上述目的,本發明采用的技術方案如下:一種基于安卓系統的插件加載方法,用以調用在dex文件中定義的四大組件:Activity顯示界面、Service服務、Content?Provider內容提供者、BroadcastReceiver廣播接收器,其特征在于,所述方法包括以下步驟:
在主工程中自定義一個加載dex文件的類加載器,支持以資源方式加載dex文件中的類;
將自定義的類加載器通過反射方式替換系統分配給主工程的類加載器,使得dex文件中的類和主工程本身的類處于同一類空間中;
主工程通過反射技術調用dex文件中的代碼模塊,以正常使用四大組件的方式使用dex代碼文件中定義的四大組件。
進一步,所述dex文件壓縮為zip格式的文件。
為實現本發明的另一目的,本發明還采用如下技術方案:一種基于安卓系統的插件加載系統,用以調用在dex文件中定義的四大組件:Activity顯示界面、Service服務、Content?Provider內容提供者、BroadcastReceiver廣播接收器,其特征在于,所述系統包括:
自定義模塊,用于在主工程中自定義一個加載dex文件的類加載器,支持以資源方式加載dex文件中的類;
替換模塊,將自定義的類加載器通過反射方式替換系統分配給主工程的類加載器,使得dex文件中的類和主工程本身的類處于同一類空間中;
調用模塊,主工程通過反射技術調用dex文件中的代碼模塊,以正常使用四大組件的方式使用dex代碼文件中定義的四大組件。
進一步,所述dex文件壓縮為zip格式的文件。
相對于現有技術,本發明所述的技術方案通過在主工程中自定義一個加載dex文件的類加載器,支持以資源方式加載dex文件中的類;將自定義的類加載器通過反射方式替換系統分配給主工程的類加載器,使得dex文件中的類和主工程本身的類處于同一類空間中;主工程通過反射技術調用dex文件中的代碼模塊,以正常使用四大組件的方式使用dex代碼文件中定義的四大組件。
為了充分地了解本發明的目的、特征和效果,以下將結合附圖對本發明的構思、具體結構及產生的技術效果作進一步說明。
附圖說明
圖1是本發明基于安卓系統的插件加載系統的模塊示意圖;
圖2是本發明基于安卓系統的插件加載方法的流程圖。
具體實施方式
下面將結合附圖以及具體實施方法來詳細說明本發明,在本發明的示意性實施及說明用來解釋本發明,但并不作為對本發明的限定。
如圖1所示,一種基于安卓系統的插件加載系統,用以調用在dex文件中定義的四大組件:Activity顯示界面、Service服務、Content?Provider內容提供者、BroadcastReceiver廣播接收器,所述Dex文件中定義的四大組件在主工程的AndroidMainfest.xml進行包名和類名顯式注冊,以便在主工程中進行調用,通過腳本將插件的jar包變成包含dex文件的文件,所述dex文件可壓縮為zip格式的文件,所述dex文件儲存于SD卡或設備內置存儲上。
所述插件加載系統包括:
自定義模塊,用于在主工程中自定義一個加載dex文件的類加載器,支持以資源方式加載dex文件中的類;
替換模塊,將自定義的類加載器通過反射技術替換系統分配給主工程的類加載器,使得dex文件中的類和主工程本身的類處于同一類空間中;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于廣州市久邦數碼科技有限公司,未經廣州市久邦數碼科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410467050.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:DNA旋轉支架
- 下一篇:高層衣柜自帶的攀爬裝置





