前提条件:已经安装了JDK 6.0、android SDK、NDK r9和eclipsele4.2开发环境.

推荐下载Android开发的综合套件adt-bundle-windows-x86,再下载Android NDK既可以开始Android NDK程序的编程了。

1.首先在eclipsele4.2上创建一个空的Android工程,无所谓,只要是一个Android工程就OK了。


Android NDK工程的编译和链接调试_第1张图片

2.安装NDK开发的插件com.android.ide.eclipse.ndk_23.0.2.1259578.jar

Android NDK工程的编译和链接调试_第2张图片


之前的Eclipse版本是包含有这个插件的,不用自己手动安装这个插件;最新的Eclipse软件不包含有该插件,必须自己下载com.android.ide.eclipse.ndk_23.0.2.1259578.jar

件,然后复制到eclipse\plugins的文件夹下,关闭Eclipse软件然后重启Eclipse,再进行操作就可以出现上图的实例。


Android NDK工程的编译和链接调试_第3张图片


3.配置NDK的路径

Eclipse的主菜单Windows—>preferences打开如下图,配置Android NDK的文件路径:


Android NDK工程的编译和链接调试_第4张图片


然后进行如下的操作:


Android NDK工程的编译和链接调试_第5张图片


出现如下所示,点击finish即可。


Android NDK工程的编译和链接调试_第6张图片


点击完成以后,观察Android工程,会发现多生成3个文件夹,如下图所示:


Android NDK工程的编译和链接调试_第7张图片


4.Andriod NDK代码的编写

Android NDK的开发用C或C++都可以,但是使用C或C++开发NDK时,应该使用C或C++的标准库提供的函数。

Android NDK工程的编译和链接调试_第8张图片


5.在Android.mk文件和Application.mk文件中可以添加NDK编程需要支持的库,具体信息可以参考NDK编程的谷歌文档。

Android NDK工程的编译和链接调试_第9张图片


Android NDK编程可以使用的C++的库:

Android NDK工程的编译和链接调试_第10张图片

添加C++的库的支持:

Android NDK工程的编译和链接调试_第11张图片


6.Android NDK的调试

Android NDK工程的编译和链接调试_第12张图片


再次编译Android工程会出现一下的错误提示:

Android NDK工程的编译和链接调试_第13张图片


按下图的操作进行该错误的屏蔽,再次编译程序就不会再弹出错误提示框了。

Android NDK工程的编译和链接调试_第14张图片


Android NDK的调试使用GDB程序,并且Android NDK的调试原理是使用socket进行通信的,因此必须要有客户端和服务器端,并且Android虚拟机要打开。要调试Android NDK程序还必须自己编写调试的debug.mkconnect.mk文件,并将这两个文件拷贝到Android NDK工程的文件目录下。

服务器端的debug.mk文件的编写:

Android NDK工程的编译和链接调试_第15张图片

客户端connect.mk文件的编写:

Android NDK工程的编译和链接调试_第16张图片

打开cmd程序,开启Android NDK调试的服务端:

Android NDK工程的编译和链接调试_第17张图片

调试服务器端,不能关闭。

再打开一个cmd程序开启Android NDK调试的客户端:

Android NDK工程的编译和链接调试_第18张图片


注意:

D:\adt-bundle-windows-x86-20130219\android-ndk-r9\prebuilt\android-arm\gdbserver(调试符号)

D:\adt-bundle-windows-x86-20130219\android-ndk-r9\toolchains\arm-linux-androideabi-4.8\prebuilt\windows\bin(GDB)

这两个路径要添加环境变量以后就没有出现错误了。


Android NDK工程的编译和链接调试_第19张图片




更多相关文章

  1. [转]Android 实现TextView中文字链接的方式
  2. 从Android读取Unity assets下的图片并保存为Bitmap格式
  3. 开机动画(闪动的ANDROID字样的动画图片)
  4. android 资源列表-史上最有价值的android资源链接
  5. Android实现局部图片滑动指引效果
  6. Android ImageView 图片等比缩放问题
  7. Tensorflow在手机端的部署——官网Android工程源码分析之TensorF
  8. Android使用ViewFlipper实现图片切换功能

随机推荐

  1. Android集成腾讯bugly-tinker热更新使用
  2. android hessian
  3. Android短彩信源码解析-短信发送流程(二)
  4. Android自定义Dialog(自定义主题、自定义
  5. Android(安卓)自绘输入框
  6. 仿QQ android 实战(学习 android 先来个QQ
  7. 2011.06.20——— android listview的拖
  8. Android中自定义对话框小结
  9. 简单总结RectF、Rect 和Matrix ,还有Pain
  10. android 执行shell命令代码