我有一个JAR库,其中包含几个不同的/src
包中的一些非源代码文件(在本例中为JSON文件)
当我将JAR添加为我的一个Android项目的依赖项并构建apk文件时,那些JSON文件不在apk或classes.dex中(我运行dex2jar
并看到文件丢失)< / p>
如何告诉dex
还在输出中包含这些json文件?
答案 0 :(得分:3)
AFAIK,dex文件仅用于保存.class文件(和字符串)。这是dex文件格式的(旧)描述。 (我无法在谷歌的网站上找到一个)http://retrodev.com/android/dexformat.html
当谷歌在编译时解析你的依赖关系jar时,它只关注.class文件,因为这是依赖关系的 - 你想在代码中使用的类,这些类没有在你的代码中定义。我不确定它是否会关注你在这些罐子里可能有的任何东西。
你想问的问题不是如何告诉dex包含json文件(它不能)但是如何将这些json文件放入你的apk中。不幸的是,如果它们存放在一个罐子里,我不知道如何在蚂蚁中设置一些东西来手动解压缩jar并自己移动文件。编译时jar依赖项不是为了简单地将文件复制到项目包中而设计的。