Android JNI 和NDK编程(一)

     Java Native Interface (JNI) 是java提供的本地化接口,方便java代码调用C,C++等本地代码所封装的接口。NDK是Google为Android提供的一个工具集合,通过MK文件可以方便快捷的生成各个CPU平台所需要的动态库。使用NDK有如下好处。

    1. so库的高难度反编译,提高代码的安全性。

    2. 可以方便的使用C/C++等Native语言的第三方库。

    3. 核心代码通过动态库的方式,便于代码移植。

    4. 提高某些特性情况下程序的执行效率。

    本文以Win7系统,Android Studio 3.0为环境测试。

  JNI开发的流程:

    1. 创建Android Studio项目,在main文件夹的同级目录创建jni文件夹

    

    2. 创建Java Native交互类

     

    3. 使用javac命令生成java源文件生成class文件

       

       

      注意:(1).生成源文件时需要全路径,这样会在同级目录下生成class文件,也可以通过 -d 的命令自定义class文件的生成路径

   

     

      上面就是通过指定文件夹生成对应的class文件。

    注意:(2). 如果编译的java文件不在同一个目录可通过如下方式:

    

   4. 通过javah命令以及指定第三步生成的class文件路径生成对应的C/C++  xx.h文件

   

   

   也可以通过-d 指定xx.h文件的生成路径。

  5. 创建xx.cpp文件实现第四步生成的xx.h头文件

   

到这里整个jni开发的准备工作就做完了,如何实现数据交互将在下一章讲述。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值