前沿:
在android開發過程中,往往會需要建立組件層面的第三方包,下面將對android對第三方包支援的方式種類,各試用範圍,優缺點進行總結。最後分析當前開發過程中,一些大的平台的組件實現方式。
1. 匯出jar檔案方式,實現第三方組件
1.1. 實現過程:
選擇項目--> 點擊右鍵,菜單,選擇Exportà選擇java/JAR -->選擇類和資源檔(推薦只選擇類檔案)-->選擇匯出檔案路徑,匯出JAR檔案。
1.2. 適用範圍:
合適建立無資源的第三方組件。
補充說明:
包含資源的第三方組件也可以實現,但實現的方式比較繁瑣,且不是標準做法,一般不建議這麼做,如需實現,一般用以下兩種方式
【1】 資源放到組件包JAR檔案中,類中訪問資源時,通過擷取組件資源的方式
例:ImageIcon image = new ImageIcon(this.class.getResource("icons/logo.gif"));
java.net.URL imgURL = GUITest.class.getResource("/images/Snap1.jpg");
【2】 資源放到組件包JAR檔案外,在組件中訪問資源,通過擷取運行環境中的R資源的名稱方式擷取(注意如果直接用組件項目中R類擷取資源的方式時,會有問題,運行 環境會根據資源的int值,在啟動並執行項目中找對應的資源)
1.3. 優缺點:
優點:即時過程簡單,快捷,符合第三方組件的封裝特點
缺點:不能很好的支援資源的封裝
2. 項目library引用方式
2.1. 實現過程:
選擇項目--》 點擊右鍵,菜單,選擇Properties--》選擇Android --》右下方的Library--》選擇Add,添加現有的項目。
2.2. 適用範圍:
在大的項目實施過程中,共用工程中設定資源檔供項目調用
2.3. 優缺點:
優點:
支援資源共用
在Library方式下,組件中的資源會自動產生R檔案,在應用項目中,可以直接通過R檔案對資源進行引用
缺點:
需要項目之間應用,不適合項目封裝
3. 當前第三方平台組件實現方式
3.1. CNZZ移動統計用戶端組件實現方式:
通過jar檔案方式產生組件,在組件中不包含資源檔
3.2. Admob廣告用戶端組件實現方式:
通過jar檔案方式產生組件,對涉及到的表單布局資源,通過代碼強寫完成。
3.3. 微雲遊戲平台組件實現的方式:
通過jar檔案方式產生組件,資源通過外部匯入引用項目中的方式實現。(過程用到了批處理,比較複雜)。
4. 當前我們平台的組件實現的方式
通過jar檔案方式,資源也封裝到組件中,通過包的方式去讀取資源。