Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将复杂本机应用程序编译到Android ARM的完整方法_Android_Java Native Interface_Native - Fatal编程技术网

将复杂本机应用程序编译到Android ARM的完整方法

将复杂本机应用程序编译到Android ARM的完整方法,android,java-native-interface,native,Android,Java Native Interface,Native,这是我的第一个S/O问题,请温柔一点 我想了解更多关于将C应用程序移植到本机ARM以在Android设备上使用的信息 我可以使用源代码附带的预构建工具链制作简单的程序,但如何将此工具链用于多个文件且需要配置和制作的应用程序?本文对此进行了很好的解释: 基本上,您可以像平常一样创建一个共享库,用JNI封装它,并用Java中的本机方法调用它。在Google I/O上,他们谈到了引入“NDK”——本机开发工具包,它应该简化创建使用本机(C)代码的应用程序的过程 在你走得太远之前,有几件事值得注意:

这是我的第一个S/O问题,请温柔一点

我想了解更多关于将C应用程序移植到本机ARM以在Android设备上使用的信息


我可以使用源代码附带的预构建工具链制作简单的程序,但如何将此工具链用于多个文件且需要配置和制作的应用程序?

本文对此进行了很好的解释:


基本上,您可以像平常一样创建一个共享库,用JNI封装它,并用Java中的本机方法调用它。

在Google I/O上,他们谈到了引入“NDK”——本机开发工具包,它应该简化创建使用本机(C)代码的应用程序的过程

在你走得太远之前,有几件事值得注意:

  • NDK将提供有限的功能。它的主要目的是提供一种以本机方式运行对时间极为敏感的代码的方法,但无法访问整个系统,也不会提供替代的应用程序开发模型(您仍然需要为Dalvik编写大部分应用程序)
  • 您可以编写没有NDK的本机应用程序,但无法使用app store支持的传统APK应用程序包将其分发给最终用户。如果你的应用程序是作为运营商/OEM构建的一部分分发的,那么这确实是唯一可行的选择,即使这样,也不推荐