博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android Studio NDK开发-环境配置
阅读量:5881 次
发布时间:2019-06-19

本文共 1620 字,大约阅读时间需要 5 分钟。

#Android Studio NDK开发-环境配置

NDK全称Native Development Kit。NDK是一系列Android开发工具的集合,NDK提供了一系列的工具,可以帮助开发者在Android平台上面进行c/c++的开发,并能自动将.so打包金apk中。
NDK集成了交叉编译器,并提供mk文件可以做到隔离CPU,平台以及ABI等差异,只需修改mk文件即可。开发人员只需要简单修改mk文件,就可以创建出适应各平台的.so文件。NDK还提供了一份稳定的功能有限的Android API头文件声明。
NDK开发就是使用c/c++开发Android应用或者开发Android应用的某一个功能,使用NDK有时是为了调用底层的库,有时是为了c/c++开发带来的应用性能上的提高。
以前使用Eclipse做NDK开发是件很麻烦的事情,特别是配置文件的编写。在Android Studio 1.3之后,google和JetBrains合作,将CLion整合进了Android Studio,开发者可以免费使用CLion的功能对NDK进行开发,对于开发者来说是一个莫大的福利,现在使用Android Studio ,google在也提供了更多的支持,让NDK开发更加的容易。

##环境要求

需要安装最新版的Java。之后要去先下载最新的Android Studio: 请自带梯子。也可以使用国内的镜像网站[ ] () 下载。
Android Studio 会自动下载Android SDK,Gradle等开发工具。
而NDK就需要自己手动安装了。

##安装NDK

在Toolbare可以找到Android SDK的更新图标:

7D61BD4A-854A-49CF-BFB8-CAC0C552ABA4.png

SDK Tools的Tab页中,勾选LLDB 2.1NDK:

8D94A004-08AA-45A1-892F-0435B88DB0B4.png

LLDB:是c/c++的调试器,可以用来做NDK开发的调试。

##配置环境变量

Android Studio安装的NDK默认安装在ANDROID_SDK_HOME/ndk-bundle/下。需要设置NDK的环境变量(以fish)为例,打开配置文件:

vim ~/.config/fish/config.fish

增加环境变量NDK_HOME:

set -gx NDK_HOME $ANDROID_SDK_HOME/ndk-bundle

NDK_HOME添加到PATH中:

set -gx PATH $ANDROID_SDK_HOME/platform-tools $ANDROID_SDK_HOME/tools $NDK_HOME $PATH

让环境标量立即生效:

source ~/.config/fish/config.fish

测试下ndk命令是否可以运行,运行命令:

ndk-which gcc

得到正确结果:

Users/..../Android/sdk/ndk-bundle/prebuilt/darwin-x86_64/bin/../../../toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-gcc复制代码

ndk-which命令运行正常,就意味着NDK环境变量设置正确。

注:bash_profile对应环境变量的设置:

vim ~/.bash_profile

NDK_HOME=$ANDROID_SDK_HOME/ndk-bundle
PATH=$ANDROID_SDK_HOME/platform-tools:$ANDROID_SDK_HOME/tools:$NDK_HOME:$PATH
source ~/.bash_profile

转载地址:http://arpix.baihongyu.com/

你可能感兴趣的文章
推荐系统那点事 —— 基于Spark MLlib的特征选择
查看>>
linux 下RTL8723/RTL8188调试记录(命令行)【转】
查看>>
SpringMVC案例1——对User表进行CRUD操作
查看>>
[Contiki系列论文之1]Contiki——为微传感器网络而生的轻量级的、灵活的操作系统...
查看>>
Android 网络编程 记录
查看>>
微软同步发行Windows 10和Windows 10 Mobile系统更新
查看>>
Zeppelin的入门使用系列之使用Zeppelin运行shell命令(二)
查看>>
form表单下的button按钮会自动提交表单的问题
查看>>
那些年追过的......写过的技术博客
查看>>
python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列
查看>>
C# 解决窗体闪烁
查看>>
CSS魔法堂:Transition就这么好玩
查看>>
【OpenStack】network相关知识学习
查看>>
centos 7下独立的python 2.7环境安装
查看>>
[日常] 算法-单链表的创建
查看>>
前端工程化系列[01]-Bower包管理工具的使用
查看>>
使用 maven 自动将源码打包并发布
查看>>
Spark:求出分组内的TopN
查看>>
Python爬取豆瓣《复仇者联盟3》评论并生成乖萌的格鲁特
查看>>
关于跨DB增量(增、改)同步两张表的数据小技巧
查看>>