Android studio调用JNI库(1)- 环境配置


我先介绍我用的Android Studio版本信息吧,因为不同版本的Android Studio很多设定和配置都不同了,尤其是较新的版本,用以前的方法可能不太适用,这是我目前的版本信息,我这个应该是截至我这篇文章的时间为止,最新的版本了,后期如果有新版本我有幸遇到,再更新。

在这里插入图片描述

简介

1. NDK介绍

1.1 NDK 简介

NDK全称是Native Development Kit,NDK提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so和java应用一起打包成apk。NDK集成了交叉编译器(交叉编译器需要UNIX或LINUX系统环境),并提供了相应的mk文件隔离CPU、平台、ABI等差异,开发人员只需要简单修改mk文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建出so。

Native Development Kit,是 Android的一个工具开发包
NDK是属于 Android 的,与Java并无直接关系

应用场景:在Android的场景下 使用JNI

即 Android开发的功能需要本地代码(C/C++)实现

1.2 NDK 特点

特点
在这里插入图片描述
额外注意
在这里插入图片描述

2. JNI介绍

2.1 JNI 简介

定义Java Native Interface,即 Java 本地接口
作用: 使得 Java 与本地其他类型语言(如C、C++)交互

即在 Java 代码里调用 C、C++ 等语言的代码或  C、C++ 代码调用 Java 代码

特别注意

  1. JNI 是 Java 调用 Native 语言的一种特性
  2. JNI 是属于 Java 的,与 Android 无直接关系

2.2 为什么要有 JNI?

  • 背景:实际使用中,Java 需要与 本地代码 进行交互
  • 问题:因为 Java 具备跨平台的特点,所以Java 与 本地代码交互的能力非常弱
  • 解决方案: 采用 JNI特性 增强 Java 与 本地代码交互的能力

3. NDK 与 JNI 的关系

在这里插入图片描述

NDK下载及环境配置

1. 使用Android studio SDK Manager下载

点击Android studio 工具栏的 SDK Manager:
在这里插入图片描述
或者按照路径 File | Settings | Appearance & Behavior | System Settings | Android SDK或者Tool|SDK Manager打开SDK Manager 界面在这里插入图片描述
选择SDK Tools 条目,勾选NDK和CMake后点击apply按钮等待下载完即刻
在这里插入图片描述
下载完成之后,ndk的位置在你的Android sdk目录下方,有一个ndk的文件夹。

2.配置NDK

2.1 配置环境变量

打开高级环境变量控制
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置环境变量,在环境变量的Path中添加ndk的路径
在这里插入图片描述
我的路径是D:\Android\SDK\ndk\21.3.6528147在这里插入图片描述
在cmd中输入ndk-build 出现以下结果证明配置成功在这里插入图片描述

2.2 Android studio配置NDK

下面是网上的流程,如果你可以用就直接用这个方法:
在这里插入图片描述
File — > Project Structure 进行设置
在这里插入图片描述

注意:实际上在我自己在我的Android studio中配置时,NDK Location是不可选择的状态,download也是如此,我来分享一下我在Android studio的配置过程

首先,我在 local.properties 中手动添加本地ndk.dir路径
在这里插入图片描述
但是,实际上这样仅仅是在刚刚的NDK Location显示了路径,查阅了官方文档,发现ndk.dir已弃用。在这里插入图片描述
按照官方文档的说明,在我们从 SDK Manager 下载完成后,应该自动同步build文件
在这里插入图片描述
你可以查看你的build文件,如果类似下图红框中的代码,那么恭喜你,暂时应该是没问题了。
在这里插入图片描述
如果你很不幸,和我一样,发现并没有,那么,你可以试着进入File — > Project Structure —> Modules
在这里插入图片描述
这样,我的问题就已经解决了,希望能给你带来参考!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ʚ兔子的先森ɞ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值