- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Eclipse下的Android-NDK安装实操
Android NDK环境简介
Android NDK 是运行于Android 平台上的Native Development Kit 的缩写。Android 应用开发者可以通过NDK 调用C 或C++ 本地代码。NDK 编译需要用到Cygwin 中的make 和gcc, 所以先来下载并安装Cygwin。
NDK同时支持C和C++,但C++的支持相对要弱一些,比如,不支持异常,以及在调用静态构造函数和静态析构函数时,存在一些bug。大多数情况下,使用NDK的目的,就是把和性能相关的代码,移到本地(native)层面去实现,你不大可能需要过多的OOP抽象以及其设计方面的优势(译者注:OOP往往会用到虚函数,而这会降低程序运行的性能。设计模式更是如此,通常,设计模式在带来代码的可维护性和可扩展性优势的同时,几乎无可避免地带来性能方面的损害)。我想说的就是,NDK的代码更倾向于用C编写,而不是C++。
NDK提供的API比较有限,这些API主要用于几个和性能相关的领域,比如:
OpenGL,包括支持(Java)SDK所支持的一些新版本
Math,(一些,但非全部的,专门针对计算的算法。在native层面实现可获得更好的性能)
2D graphics,?从2.2开始支持像素缓冲(pixelbuffer)
libc,提供了兼容性支持,并可能为移植现有native代码提供方便
Step1:安装CDT
在Eclipse中,进入Help – Install New Software菜单项,选择Galileo作为更新站点(“Work with”)。等待更新项目树加载,然后选中Programming Languages分支下的Eclipse C/C++ Development Tools,然后点击Next按钮。按照后续的提示,接受缺省的选项,最后必须接受许可,以便让Eclipse完成更新。等待Eclipse重启。现在你的Eclipse就支持C/C++了。
注:Galileo支持CDT6.0.2,Helios支持CDT7.0.2,但Helios对Android支持不好。安装该插件仅是方便C++的编辑,不安装也没有什么影响。
Step2:安装Cygwin
Android是基于Linux的,因此如果你要为它编写native代码,你就需要一些Unix工具。在Windows上,NDK支持Cygwin1.7.x或者更高的版本。Cygwin是什么?它只不过是在Windows上,模拟提供Unix环境的一系列的工具而已,这在有些时候很必要的,就像我们现在的情况。到 HYPERLINK 下载Cygwin 下载Cygwin。
使用在线方式安装,注意:安装路径中不能包含空格字符。缺省地,只有base包会被安装,我们则需要Devel包。不要去挑选我们???要什么样的包,因为这样有可能会导致包之间的依赖性丧失或者其他典型的Unix梦魇,所以,我建议安装整个Devel分支。分几次单击Devel根节点边上的“Default”,直到“Default”变成“Install”。现在点击Next按钮,Cygwin就会下载选中的软件包并着手安装。
中间是漫长的等待…
安装到最后,提示是否允许它在桌面创建图标。点击Finish按钮后,你就会看到桌面上出现了一个Cygwin图标,它就是用来启动Cygwin控制台的。
试一试,让Cygwin控制台启动并初始化:
在控制台中输入make –v命令,来检查GNU Make工具是否已经在由Cygwin模拟的Unix环境中存在。
Step3:安装Android NDK
从 HYPERLINK /sdk/ndk/index.html Android官方网站获得下载Android NDK。下载Windows平台上的NDK zip包,并将其解压到某个目录,再次注意,目录中不能有空格字符。我将它解压到D:\,所以目录路径就是D:\ android-ndk。
现在,开发我们的第一个NDK应用的环境就准备好了!在cygwin环境下使用ndk的编译器对c/C++进行编译。因此,只需在cygwin下配置Android NDK即可。
我在cygwin里面加了个环境变量,你也可以考虑加一下,后面方便(写你自己的目录哦):
ANDROID_NDK_ROOT=/cygdrive/d/android-ndk
export ANDROID_NDK_ROOT
?Step4:Making一个基本的NDK应用
在应用中,使用NDK的基本思路就是,将本地代码(native code)编译成函数库,然后就可以在Java代码中使用它。因此,你总会从创建一个标准的(Java)应用开始,再将NDK片段加入。现在就像咱们前面做的那样,用New Android Project Wizard
您可能关注的文档
- BSC专业技能鉴定试题(实操部分).doc
- Burster传感器.doc
- c++操作符优先级.doc
- c++教案七.ppt
- C++第五次课.ppt
- C++结课论文.doc
- C++总复习汇总资料(上).ppt
- C++邹金安第6章继承.ppt
- c2管理者.ppt
- C3-2-5主体结构-预应力分项工程.doc
- 中国国家标准 GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18233.4-2024信息技术 用户建筑群通用布缆 第4部分:住宅.pdf
- GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- 《GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计》.pdf
- 中国国家标准 GB/T 18978.210-2024人-系统交互工效学 第210部分:以人为中心的交互系统设计.pdf
- GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- 《GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置》.pdf
- 中国国家标准 GB/T 16649.2-2024识别卡 集成电路卡 第2部分:带触点的卡 触点的尺寸和位置.pdf
- GB/T 17889.4-2024梯子 第4部分:铰链梯.pdf
- 《GB/T 17889.4-2024梯子 第4部分:铰链梯》.pdf
文档评论(0)