栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

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

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

Android studio NDK下载及环境配置
  • 简介
    • 1. NDK介绍
      • 1.1 NDK 简介
      • 1.2 NDK 特点
    • 2. JNI介绍
      • 2.1 JNI 简介
      • 2.2 为什么要有 JNI?
    • 3. NDK 与 JNI 的关系
  • NDK下载及环境配置
    • 1. 使用Android studio SDK Manager下载
    • 2.配置NDK
      • 2.1 配置环境变量
      • 2.2 Android studio配置NDK

我先介绍我用的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:AndroidSDKndk21.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

这样,我的问题就已经解决了,希望能给你带来参考!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/349166.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号