Android studio NDK 开发(一些坑)

来源:互联网 发布:淘宝售后职责 编辑:程序博客网 时间:2024/06/08 15:00

1、创建头文件,参考网上其他博客说是先要make一下工程,然后在某个目录下会有class文件,然后再用命令行去生成相对应的头文件。但是这里我在make的时候没有发现对应的class文件,所以我直接在Android studio里先创建了一个 jni folder,然后在目录下手动创建了一个对应的头文件。

2、解决了头文件的问题之后,再写完jni的相关代码后,我直接run了一下,发现手机中会报错,看了下说没找到对应的so文件,后来百度说要将系统生成的so文件,移动到src/main/jniLibs/armeabi目录下,这个目录要手动创建。这样的话生成的apk就包含了一个 lib/armeabi目录,这个目录下存放着相关的so文件。

3、经过以上操作,我运行程序仍然崩溃,提示找不到so文件,想了好久也没有想出问题所在,最后我一对比发现我生成的so文件名和程序中load的文件名不一样。。有一个字母大小写没对应,经过修改程序的调用库名最后程序成功跑起来了。


app目录下的gradle配置,在android括号内的defaultConfig内,一定要加log,不然输出log时会有问题

ndk {    moduleName "JniTest"    abiFilter "armeabi"    ldLibs "log"}