是的,它可以做到(理论上),但要抓住你的帽子,这是一段颠簸的旅程!
我看到这是一个非常古老的问题,有一个新的赏金(提问者已经 3 年没有登录了!),但是我们开始......
这个方法进入了 android java 应用程序如何构建和运行的核心(即DEX,因此它可以与adobe-air或ANYTHING一起使用,这是基本的[通用方法])。(顺便说一下,您以一种令人困惑的方式使用本机一词,本机通常被理解为表示应用程序的 JNI (c++) 库元素)。
你说:
“我的想法是将 adobe air 生成的 APK 转换为我将在本机应用程序项目中导入的 Jar 文件,并调用一些在屏幕上显示内容的函数。”
Android 程序被编译成 .dex(Dalvik 可执行文件)[现在称为ART,但二进制兼容] 文件,这些文件又被压缩成设备上的单个 .apk 文件(与清单和资源等其他内容)。(解压缩 .apk 并查看内部)。
.jar 文件包含 DEX 文件(压缩)。(解压缩编译的 .jar 并查看内部)。
我以前做过一些这样的工作,这里有一个教程和编码示例的链接[由我测试](在 android studio + gradle 中)[通常需要自定义构建元素(我也给出了一个 ant 示例)]。
查看我的堆栈溢出答案动态加载 DEX 文件
这在理论上回答了您的问题,但它是基本的东西,复杂且有限制,难以编码和维护(资源是 a**e 中的真正痛苦)。
问题:这一切看起来都非常复杂和困难!
是的 !这是一件非常愚蠢且难以做到的事情!这就是为什么我们发明了跨平台框架(以及基于 Web 的代码 javascript/css/html5...)。未能通过 PORT 代码。