android - 如何在没有 Eclipse 的情况下向 APK 添加 jar 并使 APK 引用它?

标签 android jar runtime apk refer

这看起来有点奇怪,但我需要实现它。

我有一个 APK 并且我没有它的源代码。 现在我可以破坏 apk ,修改并重新打包它,但是在这样做的同时,我需要向它添加我的自定义 jar 并使应用程序/apk 在运行时引用这个库/jar。

如果我只是在 apk 中创建一个文件夹 libs 并将我的 jar 放入其中,我会收到 NoClassDefFound 错误。

知道如何使用 ANT 或任何其他工具实现它吗? 提前致谢

最佳答案

您在 android 项目中附加的 Jar 不会复制到 APK 中。

发生的事情是,您的 Jar(s) 文件的代码成为您的 Android 代码的一部分。这意味着您不能简单地将 Jar 文件放入(或复制)到您的 APK 中。

但是,有办法解决。在 APK 中,您的源代码可以在 classes.dex 文件中找到。

你需要做的就是按照步骤来

1 - 使用 winRAR 提取 APK

2 - 使用 dex2jar 将 classes.dex 转换为 Jar

3 - 提取 Jar 文件

4 - 您将在 *.class 中获得源代码,您可以使用 JdGUI 将其转换为 *.java。

现在,您可以创建新的android项目并使用代码。

关于android - 如何在没有 Eclipse 的情况下向 APK 添加 jar 并使 APK 引用它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16013169/

相关文章:

java - 在运行时编辑类

c# - 如何在AppDomain内的程序集中调用静态方法

android - 带 SurfaceHolder.lockCanvas 的动态壁纸(矩形脏)

java - 在可执行 jar 中使用非可执行 jar 中的类

java - 是否可以重命名 maven jar-with-dependencies?

linux - 以不同的用户身份启动 .jar

android - 在 Android 应用程序开发方面获得全面帮助的最佳网站是什么?

Android 应用程序命名指南,第一个单词是公司

android - 关于图库 View 的查询

vba - 如何将 VBA Now() 转换为秒以确定程序总运行时间