2013-05-01 110 views
0

做了我的搜索,但沒有看到任何答案。如何在分佈式jar文件中包含資源文件?

我正在構建一個用於分發的SDK。在我將其標記爲構建路徑中的「is library」之後,jar文件已成功構建。

現在面臨的挑戰是還包括分配我的js庫(js.zip)。我看到js.zip在放在PROJECT_ROOT/res/raw下後被包含在我的.APK文件中。但是我沒有通過「jar tf my.jar」在jar文件中看到它。如果將我的文件放置在資產文件夾中,則不會做出差異。

這可能嗎?

感謝,

+0

http://developer.android.com/tools/projects/index.html。 http://developer.android.com/tools/projects/projects-eclipse.html。檢查鏈接 – Raghunandan 2013-05-01 16:50:41

回答

0

的jar文件有內置成功後,我將其標記爲 「是圖書館」,在構建路徑

該JAR並非設計用於再分配。這是在主機項目中使用Android庫項目的工件。

這可能嗎?

在撰寫本文時,Android並未在JAR中分發Android資源。 也許這將在目前正在開發的基於Gradle的構建系統中可用。

您需要分發一個Android庫項目,其中包含您的資源,其中還包含您的src/樹或用於該代碼的手動構建的JAR,其格式爲libs/

例如,這裏是一對相當原始的Ant任務此:

<target name="jar" depends="debug"> 
    <delete file="bin/CWAC-ColorMixer.jar" /> 
    <jar destfile="bin/CWAC-ColorMixer.jar" basedir="bin/classes" excludes="**/BuildConfig.class **/R*.class" /> 
</target> 

<target name="dist-lib" depends="jar"> 
    <copy todir="/tmp/CWAC-ColorMixer/libs"> 
     <fileset dir="libs/" /> 
    </copy> 
    <copy todir="/tmp/CWAC-ColorMixer/res"> 
     <fileset dir="res/" /> 
    </copy> 
    <copy file="bin/CWAC-ColorMixer.jar" todir="/tmp/CWAC-ColorMixer/libs" /> 
    <copy file="AndroidManifest.xml" todir="/tmp/CWAC-ColorMixer" /> 
    <copy file="build.xml" todir="/tmp/CWAC-ColorMixer" /> 
    <copy file="local.properties" todir="/tmp/CWAC-ColorMixer" /> 
    <copy file="project.properties" todir="/tmp/CWAC-ColorMixer" /> 
    <copy file="LICENSE" todir="/tmp/CWAC-ColorMixer" /> 
    <mkdir dir="/tmp/CWAC-ColorMixer/src" /> 
</target> 

第一個創建的JAR文件。第二個在臨時目錄中創建一個Android庫項目。特別是第二個Ant任務確實需要改進(例如,可配置的位置,自動壓縮結果),但它工作正常。

+0

感謝您的真棒書籍和您的輸入。 「您需要發佈一個Android庫項目,包含您的資源,也包含無論你的src /樹」 - 怎麼辦呢? 「或在libs /中爲該代碼手動構建的JAR。 如何手動構建JAR文件?使用AAPT? – user443461 2013-05-01 17:26:20

+0

這個帖子怎麼樣?似乎是可行的。 [鏈接](http://stackoverflow.com/questions/9902075/build-java-library-with-resources) – user443461 2013-05-01 17:49:43

+0

@ user443461:「怎麼做?」 - 見編輯。 「我如何手動構建JAR文件?」 - 過去15年來,人們一直用Java來做這件事。 「這個帖子怎麼樣?」 - 除了不工作的胡言亂語? – CommonsWare 2013-05-01 18:11:24

相關問題