1. 程式人生 > >Android 如何在工程中引用第三方專案

Android 如何在工程中引用第三方專案

2.庫專案建立和使用

庫專案就是一個完整的android專案我們只需要配置一下他的lib屬性就可以了就可以作為一個lib專案來使用。步驟:右鍵需要作為lib的專案---》Properties---》android----》

Library----在isLibrary的前面勾選複選框即可。

Android <wbr>引用外部專案庫筆記

我們在其它android的專案中怎麼使用庫專案了?,也很簡單:

跟上面的步驟一樣,只是在Library中不是選擇Is Library 而是 add 新增一個Lib專案

例:

Android <wbr>引用外部專案庫筆記

lib專案中使用的過程中需要注意的事項 

在使用庫專案的時候,因為Android專案結構及編譯工具的特殊性,我們需要注意一些要點,列舉如下:

      1.工作專案和庫專案的資源名稱,如果名稱重複,編譯器會優先使用工作專案(也稱為子專案)的資源,這個特點在專案中也可以利用,比如自己想要替換資原始檔的東西,只需要命名相同就可以了;

       2.無法將一個庫專案匯出為一個jar檔案;

       3.庫專案的Android系統版本必須等於或低於工作專案的系統版本;

    4.每一個庫專案都會生成一個R檔案,工作專案被編譯時,將會合並工作專案和庫專案的R檔案,如果R檔案中有常量同名,將使用工作專案R檔案中的常量;如果引用了多個庫專案,庫專案中的R檔案有常量重名,將根據庫專案被引用的順序來確定常量的使用優先順序。

庫專案使用的場景

庫專案確實為重複程式碼程式碼帶來了很大的好處。但是並不是什麼情況下都是適用的,就像前面提到的適合做一些特定邏輯上的處理,比如新浪微博我們開發新浪的一些功能可以使用新浪微我們提供的lib專案,它裡面主要封裝了一些介面的操作。我們只需要呼叫就可以了,這種場景庫專案來對指定的介面完成指定的事情。如果使用同一個lib專案時介面有很大的改變就不適合使用lib,因為在lib專案中封裝的邏輯處理是不能改變的包括介面的呼叫。和異常的一些處理。我們必須之前做好足夠的設計。在對各種android的控制元件定義格式的儘量使用style來完成,來方便不同子專案來呼叫同一個庫專案修改控制元件屬性的修改性。

最後說一下資源衝突問題有上面注意點:

1.工作專案和庫專案的資源名稱,如果名稱重複,編譯器會優先使用工作專案(也稱為子專案)的資源,這個特點在專案中也可以利用,比如自己想要替換資原始檔的東西,只需要命名相同就可以了;

我們知道本專案的優先順序最高。但要注意一點的是string裡面的國際化問題。一般整合的專案都很完善國際化解析度什麼的都支援,自然自己的專案就支援了這些功能,這樣就會出現你在string裡面定義了一個key跟專案庫裡面的key一樣但結果值缺以專案庫的為準的現象,為什麼?因為手機去找value-zn(一般手機預設是語言是中文)的資源了,由於你本來專案裡面沒有國際化,所以自然去專案庫裡面找資源了,最容易出現的問題就是app_name總是專案庫的名字。

還有一點要提醒的是