NDK开发流程

NDK开发流程

  • 创建java类X,申明native方法
  • 使用javac编译为.class文件
  • 使用javah生成头文件(在包文件夹上一目录路径下执行javah命令,且参数为完整的包名.类名)
  • 新建.c或.cpp文件,包含上一步生成的.h文件,实现头文件中申明的方法
  • 编译成动态库
  • X中使用System.loadLibrary()装载动态库
  • 使用X类

Android Studio NDK开发

  • 创建java类X,申明native方法
  • make project,切换到 工程名\app\build\intermediates\classes\debug目录,用javah 包名.类名生成.h头文件
  • app\src\main目录下新建jni文件夹
  • 拷贝.h到jni文件夹,编写.c或.cpp
  • 工程设置中添加NDK路径
  • gradle中添加
defaultConfig {
    ndk {
        moduleName "YanboberJniLibName" //生成的so名字
        abiFilters "armeabi", "armeabi-v7a", "x86" //输出指定三种abi体系结构下的so库。目前可有可无。 
    }
}
  • 对应平台生成的.so文件在工程名\app\build\intermediates\ndk目录
  • 可将各种平台.so拷到app\src\main\jniLibs目录

你可能感兴趣的:(NDK开发流程)