我确信这已经被问过很多次了(因为我发现了很多类似的问题和答案)但是,不知何故,我仍然无法解决这个问题。基本上,我在网上找到了教程,但没有一个对我有用->它们要么过时,而且我的 Ant 安装不喜欢这些教程中存在的 build.xml 文件,或者其他教程只是不给我所有我需要完成此操作的信息(天哪,事情真的应该变得更容易)。
所以,假设我有 3 个项目 -> 项目“Initial”、项目“DependsOnInitial”和项目“FinalDependsOnBoth”。因此,我需要创建一个脚本来自动执行“构建依赖于位于其 libs 目录中的其他第 3 方 jar 文件并创建混淆 jar 文件”(来自第 3 方的 .class 文件)的过程的脚本jars 不一定需要混淆),然后可以将其复制到“DependsOnInitial”项目的“libs”文件夹中。然后,该脚本将“为 'DependsOnInitial' 项目构建另一个 jar 文件,该项目也依赖于从 'Initial' 创建的 jar 文件以及其他 3rd 方 jar,然后对结果进行混淆并将其打包到一个 jar 中”。最后,脚本将“
实际上,我现在可以使用我拥有的脚本来执行此操作,但是当我的应用程序崩溃时,在引用混淆项目时似乎存在一些问题。
另外,请记住我使用的是最新的 Android 工具(我使用的是 SDK 工具的 Rev. 20.0.3 和 SDK Platform-tools 的 Rev. 14);我在网上找到的许多 ant build.xml 示例都使用较旧的 ant 系统(我的 ant 系统将使用 ant.properties 和 local.properties 来设置它的许多内部值等)。
最好您的回复将包括一个完整的 build.xml,或者,一个在相关项目的 build.xml 文件(或某种组合)上调用 ant 的 bash 脚本。
(我这样做的原因是中间 jar 文件需要分发给其他合作伙伴,因此除了将进入市场的最终应用程序之外,还需要对其自身进行混淆)