如何在运行时从 Android 应用程序的 asset 文件夹加载 jar 文件。从资产文件夹加载是我的要求。有什么办法可以做到这一点吗?请帮忙 ..
我得到了答案。我在这里添加这个答案。因为这可能对其他一些搜索有帮助。
有一些步骤可以实现这一点。
-
您必须将 JAR 文件复制到应用程序的私有内部存储中。
使用dx在 android 文件夹内的工具中,您必须生成与 JAR 文件关联的classes.dex 文件。 dx 工具将位于该位置/android-sdk/build-tools/19.0.1(Dalvik VM需要这个文件,只是dalvik VM无法读取jar))
使用aapttool 命令也在同一位置,您必须将classes.dex 添加到JAR 文件中。
该 JAR 文件可以使用 DexClassLoader 动态加载。
如果您要从您自己的任何一个库制作 JAR,则每次库源代码发生更改时,您都必须执行此步骤 (1-4)。因此,您可以通过创建 shell 脚本(在 Mac/Linux/Ubuntu 中)或批处理脚本(在 Windows 中)来自动执行此步骤。你可以参考这个link http://linuxcommand.org/wss0010.php了解如何编写 shell 脚本。
Note:实现这种方法的一种情况是,当无法将JAR文件直接添加到核心项目的构建路径中并且需要在运行时动态加载时。在正常情况下,JAR 文件可以添加到构建路径中。
请检查此链接以获取详细代码和实现。
如何在运行时加载jar文件 https://stackoverflow.com/questions/194698/how-to-load-a-jar-file-at-runtime
Android:如何从 JAR 文件动态加载类? https://stackoverflow.com/questions/7947422/android-how-to-dynamically-load-classes-from-a-jar-file
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)