1

我想将我的 jar 转换为 dex: dx --dex --output=file.dex file.jar。在包含我的课程所需的配置文件的文件file.jar夹中。cnf/但是生成的 dex 文件中没有文件夹cnf/

转换时如何将所有文件和文件夹保留在 dex 文件中?

4

2 回答 2

2

这是不可能的,没有办法将任意文件存储在 dex 文件中。您可以获得的最接近的方法是创建一个“android”jar 文件,将 dex 文件作为 classes.dex 条目,以及您想要放入其中的任何其他内容,例如 cnf 文件夹。

于 2015-08-28T07:18:24.010 回答
1

您可以放入cnf/APK文件。APK 是一个 ZIP 档案。在设备cnf/文件夹上解压后将位于类路径中,因此它应该与 JAR 中的工作方式相同。

  1. 构建后从 APK 内的 META-INF 文件夹中删除 MANIFEST.MF 和证书;

    zip -d file.apk "META-INF/*"
    
  2. 将您的资源 ( cnf/) 添加到 APK;

    aapt add -v file.apk cnf/*
    
  3. 重新签署 APK。这是使用默认调试密钥的示例:

    jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ~/.android/debug.keystore file.apk androiddebugkey
    
于 2016-10-08T01:59:21.453 回答