Android Google ARCore尝鲜记录

Android程序员mp / 2018年08月16日 13:39

手机

本文是Clock同学的投稿文章,记录了他对Google几天前推出的ARCore项目的尝鲜,欢迎阅读。

昨晚体验了一把Google前几天对外发布的ARCore,它不像原先推出的Tango需要特定的硬件设备支持(关键是Tango的价格好贵),只需要一台手机即可完成所有操作,以下是一些尝鲜体验的记录。

官网资料

根据目前的Google AR( https://developers.google.com/ar/)文档描述,当前支持的开发环境只有Android Studio、Unity、Unreal、Web四种。

每个开发环境都有一份新手入门指引,没有太多深入内容,都是手把手教你跑个Hello World那种,只要按着步骤操作即可。

环境准备

体验Android ARCore时,需要先做下面这些准备:

  • 拉取Google在Github上开源的arcore-android-sdk项目代码,地址: https://github.com/google-ar/arcore-android-sdk

  • Android Studio 2.3 + Android 7.0(或以上)的手机一台,由于目前这个Android ARCore SDK刚刚推出,Google没有做太多设备的兼容,目前仅支持这些型号:Google Pixel 、 Google Pixel XL 、 Samsung Galaxy S8 (SM-G950U, SM-G950N, SM-G950FD, SM-G950FD, SM-G950W, SM-G950U1)。

  • 安装arcore-preview.apk作为一个基础服务( https://github.com/google-ar/arcore-android-sdk/releases/download/sdk-preview/arcore-preview.apk),手机安装完后在应用程序里面会有一个Tango Core服务。

做完以上准备后只需要插上手机,编译工程到手机上,即可开始你的AR体验之旅。

对于没有上面列出的支持设备的用户,别气馁,下面还有转机。

看看代码

编译成功后,看了一下项目的结构,整个工程只有以下两个module

其中libraries下仅放着一个优化过后的arcore_client.aar,samples将arcore_client.aar和obj-0.2.1.jar作为依赖。

arcore_client.aar和obj-0.2.1.jar主要都是一些数学计算相关的代码,核心都在so文件里面,不过so并不在项目本身和arcore_client.aar中,主要由前面安装的arcore-preview.apk提供,由arcore_client.aar封装向上提供JNI调用接口。

继续折腾

如果你不是官方指定的几款体验机型,又想尝鲜怎么破,有一种思路是通过反编译arcore_client.aar修改检测设备是否为支持设备(isSupported方法)的代码

然后重新代码成aar引入即可,这样可以通过代码运行监测,但实际能否支持运行还要看设备。有位外国老哥就是这么干的( https://github.com/tomthecarrot/arcore-for-all),一些试过此法的人也给予了反馈,从目前来看,有些不在官方指定机型范围的机子还是能够正常运作的。

想象

以上是个人粗浅的尝鲜记录,从贵价的Tango,到只需手机即可体验AR,AR的普及相信不会太久。想想生活中有多少场景可以用上AR:购物、教学、见见在异地的亲人、游戏… 不过在这个Android碎片化到还能再碎的时代,估计Android开发者们又有不少坑要填了…还是iOS的同学幸福啊…最后,放一个Google ARCore的介绍视频供大家欣赏。

iOS赞赏

欢迎关注Clock同学返回搜狐,查看更多

责任编辑:

1.环球科技网遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.环球科技网的原创文章,请转载时务必注明文章作者和"来源:环球科技网",不尊重原创的行为环球科技网或将追究责任;3.作者投稿可能会经环球科技网编辑修改或补充。