jni和ndk的区别?
区别如下:
JNI是Java调用Native机制,是Java语言自己的特性。它的全称为 Java Native Interface,类似的还有微软.Net Framework上的p/invoke,可以让C#或Visual Basic.Net调用C/C++的API,所以说JNI和Android没有关系。在PC上开发Java的应用,如果运行在Windows平台使用 JNI是经常性的,比如说读写Windows的注册表。
而NDK是Google公司推出的,帮助Android开发者通过C/C++本地语言编写应用的开发包。它包含了C/C++的头文件、库文件、说明文档和示例 代码。
我们可以理解它为Windows Platform SDK一样,是纯C/C++编写的,但是Android并不支持纯C/C++编写的应用,同时NDK提供的库和函数功能很有限,仅仅处理些算法效率敏感的问题,所以Android123推荐初学者学好Java后再学习JNI。
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有