Android NDK 初探
来源:互联网 发布:淘宝图片尺寸 编辑:程序博客网 时间:2024/06/05 17:43
这两天在整Android NDK的调研
首先下载NDK包 http://developer.android.com/tools/sdk/ndk/index.html(注:android sdk ,java 神马的就不用多说了,自己装就ok了)
然后再NDK解压包的目录 samples 目录下有它提供的例子如下图所示,一次打开hello-gl2文件如图所示。。
我们编写的C/C++程序都放在jni文件下。。其中Android.mk主要负责android程序的编译。。具体介绍可以看如下链接:android.mk简介:http://www.cnblogs.com/hnrainll/archive/2012/12/18/2822711.html
然后你就可以在Eclipse中导入你所要的Project文件了。如果直接导入,如果你点击直接运行,是会出错的。。
问题在于,你导入运行的文件中C/C++文件没有编译,Eclipse目前也不认识这些文件,不能进行编译。。所以不能直接运行,即使能运行,也不正常。
那么解决这个问题有两个办法:
1、先在命令行里编译这些文件,在导入到Eclipse下:
如果出现上图情况,表示你编译成功了。。现在导入到Eclipse后,就能正常运行了。
2、在Eclipse下进行配置:
在Preferences,Android,NDK中配置你的NDK Location:
然后再:在你的工程Project选择Android Tools,Adding Native Support。。主要是你在写JAVA程序时,如果要调用C/C++程序的话,就需要声明native方法。。以调用非java的接口。。然后你点击运行就可以了。。O(∩_∩)O哈哈~
在具体看NDK中C/C++文件的时候,会出现Symbol could not be resolved 的问题。明明在头文件中定义了一个变量或者常量,但是就是不能正常使用,如果你自己定义一个,又会报重复定义的错。。很纠结啊。。主要感觉是单个NDK来编译这些C/C++还是弱了一点,需要更多的库或标准的支持。
具体解决方法:下载MinGw 或者 Cygwin,在对应的Project C/C++ General ,Paths and Symbols 中Includes中添加一些库。。我添加了下图中的头两个,然后重启了Eclipse,问题解决了。。
参考资料:
Symbol could not be resolved
http://www.eclipse.org/forums/index.php/t/285005/
- Android NDK 初探
- Android之NDK初探
- Android NDK 初探
- 初探Android NDK 编程
- Android NDK 初探
- Android之NDK开发初探
- 初探 Ubuntu下android NDK
- Android ndk-gdb 调试初探
- android studio NDK 开发初探
- Android NDK之Lame初探
- Android ndk初探(一)
- Android NDK初探:应用卸载反馈实现
- Android Studio NDK 构建工具 CMake初探
- android studio2.2初探ndk jni开发
- NDK开发之Android.mk文件初探
- Android NDK之旅-OpenGL 初探
- ndk系列——使用Android Studio 初探NDK开发
- Android NDK初探 你也可以做移动开发
- 日期在String和Date类型转换;ParsePosition,formatter.parse,java.sql.Timestamp
- 邮件服务器端口协议
- 一个阿里巴巴码农的六年回眸
- Core Animation学习笔记一:CATransactions
- asp.net生成缩略图并支持文件上传实现代码
- Android NDK 初探
- 备忘——变量交换的效率
- ERP系统容灾方案析投入产出比例与维护管理成本分析
- Canny算子提取边缘Matlab源代码
- Django的模板系统
- gridview固定表头--纵向固定横向滚动
- ListView虚拟模式的使用
- Address already in use: JVM_Bind<null>:80 解决方案
- UNIX网络编程——SOCKET API和TCP STATE的对应关系_三次握手_四次挥手及TCP延迟确认