EasyAR是一款优秀的AR开源SDK,不同于高通的vuforia sdk,它是完全免费的,没有水印也没有使用次数的限制,而且在增强现实的实现方面也做的比较出色。但是,它的官方说明文档较为匮乏,举个例子来讲,说明文档中没有给出EasyAR在eclipse下的开发步骤,而且官方给出的示例是面向AS的,这对于那些习惯用eclipse开发的用户来讲无疑是一个缺憾。(当然也是我头疼的地方)

网上对于这一方面的资料非常少,反正我没有找到,于是我花了一个下午的时间研究了一下eclipse下运行EasyAR官方sample的方法,希望给用得着的小伙伴一个参考。

其实,在整个过程中,我们需要抓住两点:一个是Android Studio工程转换为eclipse工程的方法;另一个是eclipse编译C/C++生成.so文件的方法。好了,废话不多说,我们说一下具体步骤:

第一步:到官网下载示例代码,并解压到本地,这里我下载的是EasyAR_v1.3.1_NativeSamples_2016-08-25


第二步:找到示例所在文件夹,位于\EasyARSDKSamples\Android下,这里我们以“HelloARNative”工程为示例说明。


第三步:打开HelloARNative工程,我们会看到如下结构


这是Android Studio下的工程文件,我们需要把它转换为eclipse中的工程文件。具体而言就是双击app文件夹,一路点击,直到找到main目录下的如下文件 。


我们把java目录名字改为src,然后复制main目录下的所有文件到HelloARNative目录下,删掉原来的文件。得到如下结构


此时,我们就已经转换好了,接下来可以将EasyARSDKSamples拷贝到eclipse的工作空间下,启动eclipse将工程导入进来。

第四步:导入到eclipse后,我们会发现有各种各样的错误,这些错误出现的原因可能是因为sdk版本或者未添加jar文件等导致,可以自行百度解决。解决问题所需要的配置可以参考如下:


第五步:解决了错误问题后,我们还有最后一步,就是编译生成.so文件,用于调用底层c/c++函数。关于eclipse编译c/c++方法,大家可以参考这篇博文:http://blog.csdn.net/lvxiangan/article/details/45502633

推荐使用第二种方法,因为它更加简单。

第六步:当你按照上面的方法配置好后,可能会发现eclipse控制台会报错,说什么Android NDK: Aborting .Stop.

出现报错是因为我们jni文件夹下的makefile文件中,有关路径或者编译平台与文件中用到的有出路,我们需要手动来改一下,主要注意以下两个地方。

一个是Android.mk中的EASYAR_PACKAGE_PATH路径。设置这个路径主要是为了下面方便调用package文件夹内的相关文件,如libEasyAR.so等。如果你之前的配置和我一样,你的EASYAR_PACKAGE_PATH应该如下所示。


另一个需要注意的是Application.mk中的NDK_TOOLCHAIN。这个版本需要存在于你的NDK包中,我们可以在NDK下的toolchains文件下,选择其中一个版本。


当完成了上述所有步骤后,接下来你就可以build project了。当你编译完成后,会发现在工程中多了两个文件夹libs和obj。


至此,配置结束,当然还有最重要的一步,去官网申请一个key,并填写MainActivity.java相应位置中,接下来你就可以测试啦!!!

关于这个EasyAR的eclipse工程示例,我把放到http://download.csdn.net/detail/ltbyuruochengfeng/9731231,大家可以去下载。

最后附上一张效果图


更多相关文章

  1. android 文件读取(assets)
  2. unity_android工程和android_studio工程合并
  3. 读阿里巴巴Java开发手册v1.2.0之工程结构有感【架构篇】
  4. JAVA环境下创建JSP文件报错: The superclass "javax.servlet.http
  5. 【JavaWeb-6】HttpServletResponse的字符字节输出流、编码、文件
  6. Java 简单解决springmvc获取properties文件里面中文内容出现论码
  7. 解决Eclipse建立Maven项目后无法建立src/main/java资源文件夹的
  8. Spring Data+JPA (Maven构建Java工程)
  9. java读写中文文件

随机推荐

  1. curl提交json数据的方法
  2. 超简单的Mac下搭建PHP环境教程
  3. 利用webhook使php项目自动部署
  4. PHP生命周期及fpm的运作方式
  5. 详解PHP的self关键字
  6. php通过反射修改Exception实例的message
  7. php+nginx实现自动化部署脚本(简单版)
  8. php 踩坑 PDO foreach bindParam
  9. php 性能分析工具 xhprof
  10. PHP根据身份证号码,获取性别、获取生日、