android中打包含有Activity以及資源文件的jar包在工程中調用

研究如何將資源以及activity文件大包成jar文件供項目調用,走了很多彎路,也嘗試了各類不一樣方式,都不太理想,最終仍是從android的官方文檔中找到了完美的解決,這裏作一個總結。

最近剛剛發佈了一款小應用《詩詞大全》,有興趣的朋友請實用提出您的寶貴意見,謝謝html

這篇博文內容是結合android 開發文檔的翻譯以及我的在開發過程當中的具體狀況的一個總結

第一步,把普通的android project設置成庫項目

庫項目也是一個標準的android項目,所以你先建立一個普通的android項目。 這個項目能夠起任何的名稱,任何的報名,設置其餘須要設置的字段等,如圖1所示。java

接着把項目設置成庫項目,步驟以下android

  1. Package Explorer中, 鼠標右鍵項目文件夾,點擊 Properties.app

  2. Properties 窗口, 選擇"Android" ,Library屬性顯示在右下邊.ide

  3. 把"is Library" 單選框選擇上,再點擊 Apply.工具

  4. 點擊 OK 關閉Properties 窗口.ui

這時,這個項目就變成庫項目了。spa

固然,java項目也可讓其變成一個庫項目,很是簡單,執行上面的四步。其餘程序項目就能夠引用庫項目了。翻譯

圖 1.使一個項目爲庫項目code

建立manifest文件

一個庫項目的manifest文件也和標準的android應用程序同樣,聲明全部共享的組件。

好比APIDemo中的TicTacToeLib 這個例子,庫項目聲明瞭Activity GameActivity:

<manifest>
  ...
  <application>
    ...
    <activity android:name="GameActivity" />
    ...
  </application>
</manifest>

第二步 引用庫項目

若是你開發的應用程序想要包括庫項目中的代碼和資源,很是簡單,引用步驟以下

  1. Package Explorer中, 鼠標右鍵項目文件夾,點擊 Properties.

  2. Properties 窗口, 選擇"Android" ,Library屬性顯示在右下邊.

  3. 點擊Add ,打開了Project Selection對話框.

  4. 從可用庫項目列表選擇一個項目,而後點擊 OK.

  5. 對話框關閉以後點擊 Apply (在Properties窗口).

  6. 點擊 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.

相關文章
相關標籤/搜索