美文网首页
NDK开发初探

NDK开发初探

作者: 点石成金XIAS | 来源:发表于2018-07-03 11:43 被阅读0次

    最近项目需求少,学习一下NDK开发,下面是对NDK开发的初步探索,Android Studio版本3.0.1。

    1.创建一个工程,记得要勾选Include C++ support,如图1所示:

    图1

    工程创建好后,在app线的build.gradle文件中可以看到有两处不同,如图2箭头所示:

    图2

    CMake是一款外部构建工具,可与 Gradle 搭配使用来构建原生库,用以取代ndk-build。更多内容请移至:向您的项目添加 C 和 C++ 代码

    2.在src/main文件夹下多出一个cpp文件夹且文件夹下有有个native-lib.cpp文件,如图3所示,打开native-lib.cpp文件,如图4所示。

    图3 图4

    图4中的方法有改动,不是应用自动生成的模板,第一行中的extern "C" JNIEXPORT是默认的,jstring是函数的返回值,JNICALL也是默认。第二行是函数名,它的命名规范是以Java开头,其次com.bjhl.plugins.ndk.util是NativeUtil所在的包名,NativeUtil是Native所在方法的类名,最后stringFromJNI方法名,和Native方法名对应。NativeUtil类如图5所示:

    图5 图6 图7 图8 图9

    下面介绍一下GetMethodID方法的参数,如图9所示,GetMethodID方法有3个参数,第一个是要操作的jcalss对象,第二个是这个对象的构造方法,第3个参数代表的是构造方法中要传入的参数类型。详情请至JNI中java类型的简写 - hubingforever的日志 - 网易博客

    项目源码:GitHub - xiaschina/NDKDemo

    相关文章

      网友评论

          本文标题:NDK开发初探

          本文链接:https://www.haomeiwen.com/subject/bykduftx.html