知识点儿
1. so文件是什么?
二进制(EIF)文件,Linux的动态库文件,程序运行的时候加载使用的,类似于Windows下的dll文件。
2. JNI是什么?
JNI(Java Native Interface)意为JAVA本地调用,它允许Java代码和其他语言写的代码进行交互,简单的说,一种在Java虚拟机控制下执行代码的标准机制。
使用JNI编程安全性会更高些。因为生成的so文件不容易破解。
3. NDK是什么?
Android NDK(Native Development Kit )是一套工具集合,允许你用像C/C++语言那样实现应用程序的一部分。
4. JNI和NDK的区别?
- 从工具上说,NDK其实多了一个把.so和.apk打包的工具,而JNI开发并没有打包,只是把.so文件放到文件系统的特定位置。
- 从编译库说,NDK开发C/C++只能能使用NDK自带的有限的头文件,而使用JNI则可以使用文件系统中带的头文件。
- 从编写方式说,它们一样。
小结
-
最新生成.so文件的方式很简单,首先安装必要插件
安装工具
-
-
创建项目(Native C++)
创建项目
-
- 这里我因为下载工具慢,是在本地导入的NDK,这里如果网速好的话不建议本地导入(因此第一步中没有勾选)
导入NDK
- 这里我因为下载工具慢,是在本地导入的NDK,这里如果网速好的话不建议本地导入(因此第一步中没有勾选)
-
运行项目,就会看到.so文件啦
.so文件
-
-
log出so文件里的方法
log方法
-