首页 > 代码库 > 零Android基础配置 win7_32+opencv2.4.6+eclipse+ndk等

零Android基础配置 win7_32+opencv2.4.6+eclipse+ndk等

不吐不快,本来Android + C的模式应该是最理想的移植opencv代码的方式,但由于网上配环境的博文少&老,jdk,sdk,ndk,eclipse随便更新了几个版本,有很多东西就不一样,没办法,想要移植就得配环境,要陪新版本的环境,就得付出惨痛的撞死胡同的代价。

在下学习opencv有一段时间了,之前试图将其移植入嵌入式linux中,通过QT实现相关功能,不幸由于各种版本问题,ocv、qt、qte三个总是无法同时兼容,用个近一个月终搁浅,这次试图移植Android时也做好了思想准备,尽管看有些哥们博文写着两天配好,但不敢那般理想化,终于在3天内配好了,悲剧,其中各种折腾还算没让屌丝博主我崩溃,特在此列出我参考的博文以及我的经验教训

一、配置jdk,sdk,adt,ndk等

此处博主用的jdk-7u67,sdk是Android4.3.1(我手机的版本),adt是下的Eclipse自带的,也基本是最新的(之前用的luna版,可惜中途我以为是adt出问题编译不了,又换成juno版了,r9也换成了r10,应该无碍),ndk用的最新的r10.

(这里我不敢乱保证jdk换成8的,Android下W、L的行不行,我只用我自身经验,我用的以上版本,能配好我要的环境,你想用新的ndk,你就试试,都不敢试,还像前人用r6、r7么,我没基础,反正我试了,因为我懒得装那个Cygwin,既然看到有人说r7开始不用装,我就斗胆试了试,还好成了。)

截止到配ndk,得以导入ndk中了jni示例成功显示于模拟器中这部分,参考了ndk吧的一个大神的帖子、视频,他详细讲了配置过程,也兼顾介绍了一些东西,帖子如下:

http://jingyan.baidu.com/article/3ea51489e7a9bd52e61bbac7.html

至于那些个说Cygwin必须装的,我没管,装了Sequoyah,遇到问题也解决了,反而工程坏掉了,于是第二次我没装,反正我用不上也。

二、导入OPENCV-Android-sdk

这里是博主最蛋疼的地方,因为没有一次导入成功,所以各种怀疑之前的配置是不是不兼容等,纠结着试了各种写着非Cygwin的博文中的Lib和sample导入方法,无一成功,最终,博主已然决定换下opencv的版本,之前下的是官网的2.4.9,可怎么导入都是红叉,哭了都要,终于在发现官网只提供的2.3.1库能成功导入后,从CSDN下载频道搜到了2.4.2和2.4.6版本的sdk,导入发现2.4.6没有问题,这时楼主就蛋碎了,2.3.1和2.4.9是官网下的,另外是网友分享的,这尼玛为什么4.6和3.1就能导入,博主之前用2.4.9各种要死的试了n遍,算了。。成了就好。


三、测试opencv sample &自建C++测试程序

在opencv2.4.6成功导入后,测试sample,有几个能在虚拟机上运行,正常,有几个build成功但运行没反应,不管了。然后按照之前参考的大神的博文试着自己建新的Android工程,竟然,成功build了,模拟器没反应,百度了apk导出方法,导出、传手机、安装,竟然能用了,,楼主此刻泪千行哭


关于博主借鉴的大神导入库,建测试程序的帖子主要参考了

http://blog.csdn.net/watkinsong/article/details/9849973

这位牛人的第11部分介绍的很详细,出去个别处顺序问题和为了引入代码出现的各种无厘头<>外(原谅楼主是java外行,以为是代码一部分),没啥大问题,反正结论就是博主眼下这个小例子成功了,一想到之后可以把VC上做的各种程序移植到手机就各种兴奋。怕有同路人遇到类似我这样 opencv sdk 导入 Eclipse 失败 的问题,写了这篇博文,望baidu可以搜得到,不像博主当时。。唉,都是泪,,醉了,,

此处还有一位大神的博文,虽然用了些编译C++的工具,但还是有一定参考价值了,也列下:

http://blog.csdn.net/yanzi1225627/article/details/27863615

哦了,博主零基础用了近3天,比起linux给我带来的创伤,真不算什么,祝各位好运~~

2014.10.7





零Android基础配置 win7_32+opencv2.4.6+eclipse+ndk等