浅学JNI和NDK

时间:2018-09-28 11:55:07   收藏:0   阅读:151

作者:十岁的小男孩

QQ:929994365

心之安处即是吾乡

前言

  本文试图通过解答以下三个问题来达到学习JNI和NDK的目的。是什么?有什么用?怎么用?文章内容前三节来自下面第一个链接的博主共享,很详细的解答前两个问题,第二个链接是安卓官网的教程,回到了第三个问题即在实际工程中怎么用。本文记录本人阅读与开发过程,力求不失原意,但推荐阅读原文。下一篇博文将重点学习native声明的方法在底层c/c++中具体实现。

https://blog.csdn.net/carson_ho/article/details/73250163

https://developer.android.google.cn/studio/projects/add-native-code

目录

技术分享图片

1. JNI介绍

1.1 简介

1.2 为什么要有 JNI

1.3 实现步骤

  1. Java中声明Native方法(即需要调用的本地方法)
  2. 编译上述 Java源文件javac(得到 .class文件)
  3. 通过 javah 命令导出JNI的头文件(.h文件)
  4. 使用 Java需要交互的本地代码 实现在 Java中声明的Native方法

    Java 需要与 C++ 交互,那么就用C++实现 JavaNative方法

  5. 编译.so库文件
  6. 通过Java命令执行 Java程序,最终实现Java调用本地代码

2. NDK介绍

2.1 简介

技术分享图片

技术分享图片

2.2 使用步骤

  1. 配置 Android NDK环境
  2. 创建 Android 项目,并与 NDK进行关联
  3. Android 项目中声明所需要调用的 Native方法
  4. 使用 Android需要交互的本地代码 实现在Android中声明的Native方法

    比如 Android 需要与 C++ 交互,那么就用C++ 实现 JavaNative方法

  5. 通过 ndk - bulid 命令编译产生.so库文件
  6. 编译 Android Studio 工程,从而实现 Android 调用本地代码

3. NDK与JNI关系

技术分享图片

4. 怎么用?

  本节内容的学习是通过阅读安卓官网的教程,本文暂且不赘述,读者自行到官网学习,以下链接:https://developer.android.google.cn/studio/projects/add-native-code

 技术分享图片

 

原文:https://www.cnblogs.com/missidiot/p/9716902.html

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!