研究如何將資源以及activity文件大包成jar文件供項目調用,走了很多彎路,也嘗試了各類不一樣方式,都不太理想,最終仍是從android的官方文檔中找到了完美的解決,這裏作一個總結。
最近剛剛發佈了一款小應用《詩詞大全》,有興趣的朋友請實用提出您的寶貴意見,謝謝html
這篇博文內容是結合android 開發文檔的翻譯以及我的在開發過程當中的具體狀況的一個總結
庫項目也是一個標準的android項目,所以你先建立一個普通的android項目。 這個項目能夠起任何的名稱,任何的報名,設置其餘須要設置的字段等,如圖1所示。java
接着把項目設置成庫項目,步驟以下android
在Package Explorer中, 鼠標右鍵項目文件夾,點擊 Properties.app
在Properties 窗口, 選擇"Android" ,Library屬性顯示在右下邊.ide
把"is Library" 單選框選擇上,再點擊 Apply.工具
點擊 OK 關閉Properties 窗口.ui
這時,這個項目就變成庫項目了。spa
固然,java項目也可讓其變成一個庫項目,很是簡單,執行上面的四步。其餘程序項目就能夠引用庫項目了。翻譯
圖 1.使一個項目爲庫項目code
一個庫項目的manifest文件也和標準的android應用程序同樣,聲明全部共享的組件。
好比APIDemo中的TicTacToeLib 這個例子,庫項目聲明瞭Activity GameActivity
:
<manifest> ... <application> ... <activity android:name="GameActivity" /> ... </application> </manifest>
若是你開發的應用程序想要包括庫項目中的代碼和資源,很是簡單,引用步驟以下
在Package Explorer中, 鼠標右鍵項目文件夾,點擊 Properties.
在Properties 窗口, 選擇"Android" ,Library屬性顯示在右下邊.
點擊Add ,打開了Project Selection對話框.
從可用庫項目列表選擇一個項目,而後點擊 OK.
對話框關閉以後點擊 Apply (在Properties窗口).
點擊 OK 關閉Properties 窗口.
完成以上六步,Eclipse 會重建項目,把庫項目中的內容包含進去。 如圖2所示
圖 2.讓項目引用一個庫項目
若是你想增長多個庫項目的引用,使用up和down能夠設置他們的相對的優先級和合並順序。工具在合併引用的庫的時候順序是從低優先級(列表的下面)到高優先級(列表的上面)。 若是不僅一個庫定義了相同的資源ID,這個工具選擇資源時會選擇高優先級的資源。應用程序自身擁有最高的優先級,自身的資源zThe application itself has highest priority and its resources are always used in preference to identical resource IDs defined in libraries.
在menifest文件中聲明庫中的組件
在manifest文件中必須增長對在當前程序中用到的庫項目中的全部的組件。好比,你必須聲明任何用到的 <activity>, <service>, <receiver>, <provider>等,<permission>, <uses-library>,和其餘相似的元素。
聲明庫項目中的組件時,必須使用包含包名的類全名。
在TicTacToeMain例子中,聲明庫Activity GameActivity :
<manifest> ... <application> ... <activity android:name="com.example.android.tictactoe.library.GameActivity" /> ... </application> </manifest>
須要瞭解更多關於androidManifest的信息請參閱 AndroidManifest.xml.