这可能看起来有点奇怪,但我需要实现它。
我有一个APK,但我没有它的源代码。现在我可以打破 apk ,修改并重新打包它,但是在这样做的同时,我需要将我的自定义 jar 添加到它并让 app/apk 在运行时引用这个库/jar。
如果我只是在 apk 中创建一个文件夹 libs 并将我的 jar 放入其中,我会收到 NoClassDefFound 错误。
知道如何使用 ANT 或任何其他工具来实现它吗?提前感谢
您在 android 项目中附加的 Jar 不会复制到 APK 中。
发生的事情是,您的 Jar(s) 文件的代码成为您的 Android 代码的一部分。这意味着您不能简单地在 APK 中放置(或复制)Jar 文件。
但是,有办法解决。在 APK 中,您的源代码可以在 classes.dex 文件中找到。
你需要做的是,按照步骤
1 - 使用winRAR解压APK
2 - 使用dex2jar将 classes.dex 转换为 Jar
3 - 提取 Jar 文件
4 - 您将在 *.class 中获得源代码,您可以使用JdGUI将其转换为 *.java。
现在,您可以创建新的 android 项目并使用代码。
这是不可能的。所有的类都已经编译好了。您将需要再次“构建”APK,以便重新映射正确的引用。