AndroidStudio 3.0以后 Jni编程配置

如果知道一开始就要用jni开发就在创建新项目的时候勾选include C++

AndroidStudio 3.0以后 Jni编程配置_第1张图片
你会发现项目中多了很多文件!可以直接运行
AndroidStudio 3.0以后 Jni编程配置_第2张图片

**如果是工程开始一段时间后面打算开始用Jni的话
先下载SDK
通过SDKManager下载:CMake和LLDB**
AndroidStudio 3.0以后 Jni编程配置_第3张图片
AndroidStudio 3.0以后 Jni编程配置_第4张图片

然后编写JNI接口
AndroidStudio 3.0以后 Jni编程配置_第5张图片

**方法显示红色
我们重新 build
我们重新 build
我们重新 build**
AndroidStudio 3.0以后 Jni编程配置_第6张图片
AndroidStudio 3.0以后 Jni编程配置_第7张图片

然后我们可以看到目录下多出一个文件,我们复制它的路径
接着在控制台文件中输入命令 cd 复制的路径我们删除一点保留到debug就好
这里写图片描述
AndroidStudio 3.0以后 Jni编程配置_第8张图片

然后用javah命令生成.h文件
这里写图片描述
AndroidStudio 3.0以后 Jni编程配置_第9张图片
生成了.h文件还不行,只是声明了方法,我们还需要去实现它,我们在main下新建一个jni文件夹
AndroidStudio 3.0以后 Jni编程配置_第10张图片
AndroidStudio 3.0以后 Jni编程配置_第11张图片

然后把刚刚生成的.h文件放进去,然后添加getName.cpp 并填写方法
AndroidStudio 3.0以后 Jni编程配置_第12张图片

配置gradle
在build.gradle的defaultConfig节点下加入:
// 使用Cmake工具生成多个版本的so文件
    externalNativeBuild {
      cmake {
        cppFlags ""
        abiFilters 'arm64-v8a','armeabi-v7a','x86','x86_64'
      }
    }
在build.gradle的android节点下加入:
// 配置CMakeLists.txt路径,里面确定了c源码位置,以及编译后so文件的名字
  externalNativeBuild {
    cmake {
      path "CMakeLists.txt"
    }
  }

AndroidStudio 3.0以后 Jni编程配置_第13张图片
在main目录下添加CMakeLists.txt
AndroidStudio 3.0以后 Jni编程配置_第14张图片

**然后重新bulid
然后重新bulid
然后重新bulid
运行编译成功**
AndroidStudio 3.0以后 Jni编程配置_第15张图片

你可能感兴趣的:(android开发)