pie*_*fou 3 java-native-interface android android-ndk
我们想要将一个巨大复杂的本机程序迁移到Android系统,将其作为后台服务运行,接受使用JNI和IPC从Java程序发送的命令。然而,Android NDK 声明了以下内容:
请注意,NDK 不支持您开发纯本机应用程序。Android 的主要运行时仍然是 Dalvik 虚拟机。
这是否意味着我们无法在 Android 上运行独立的纯本机应用程序作为后台服务?原生代码只能以库的形式存在,通过JNI加载到虚拟机中?
NDK 本身仅用于创建库,但如果您进行一些网络搜索,您会发现至少有两组包装器脚本或指令(ab)使用其工具链来制作与 android 的仿生 libc 链接的独立可执行文件(您可以使用它)无法从非 Android Arm 工具链中获取)。
谷歌人并不鼓励人们这样做。不幸的是,他们对 android 的愿景仅包括 java 应用程序,并支持可选的本机库 - 它不包括安装或启动本机可执行文件的任何“稳定”方法,从某种意义上说,他们警告您今天可能能够使用的方法可能无法在新版本中继续工作。这确实太糟糕了,因为这意味着放弃该设备的许多通用计算机潜力。
| 归档时间: |
|
| 查看次数: |
3372 次 |
| 最近记录: |