AndroidNDK 基础知识

AndroidNDK基础

一、NDK简介

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

    NDK提供了一份稳定、功能有限的API头文件声明。Google明确声明该API是稳定的,在后续所有版本中都稳定支持当前发布的API。从该版本的NDK中看出,这些API支持的功能非常有限,包含有:C标准库(libc)、标准数学库(libm)、压缩库(libz)、Log库(liblog)。

二、 平台环境搭建(win平台)

    下载官方的NDK开发包,解压到你想解压到的位置,将此位置添加到Windows的环境变量Path中,在Eclipse—〉Windows—〉Preferences—〉Android—〉NDK—〉下选取安装的NDK位置。

 、在Win平台是否使用cygwin模拟Linux环境

    对于Windows环境下NDK的开发,如果使用的NDK是r7之前的版本,必须要安装Cygwin才能使用NDK,所以为Eclipse需要配置的builder,其实是执行Cygwin,然后传递ndk-build作为参数。在NDKr7开始,Google的Windows版的NDK包含了简化版的Cygwin,并提供了一个ndk-build.cmd的脚本,这样,就可以直接利用这个脚本编译,而不需要使用Cygwin了。只需要为Eclipse Android工程添加一个Builders,就能让Eclipse自动编译NDK。

四、 在ecplise平台添加NDK代码的方法

    新建Android项目,选取项目右击在Android tools 中选择Add Native Surport 。然后ecplise会自动创建jni目录,在jni目录中编写自己的cpp代码即可。

五、 NDKjni下的c文件Unresolved inclusion的解决

     原因是在eclipse编辑环境中没有找到对应的include中的文件。解决方法是将包含该文件的include目录作为新的linked folder加入工程中。具体方法如下:
    1.
右击工程->New->Folder
    2.
对话框中点击Advanced

    3. 选择Link to alternate location (Linked Folder),选择需要的include目录

    4. Finish后刷新工程,问题解决。注意不要打开包含的文件,编译器会报错。

    include 目录可以在ndk的安装目录中找到

    例如:/android-ndk-r7b/platforms/android-8/arch-arm/usr/include

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值