ARCore快速入门-03检查手机是否支持ARCore功能

在谷歌官方对ARCore的介绍中,提到启用 ARCore 有两种方法:AR 必备和 AR 可选

AR 必备

AR 必备是指您的应用没有 AR 便无法使用。 应用商店会确保您的应用只能在支持AR的设备上运行,当用户安装 AR 必备应用时,应用商店会自动安装 ARCore,然后再安装应用。

要将应用设置为 AR 必备,确保按下图所示勾选 Edit > Project Settings > ARCore > ARCore Required 菜单项。 该菜单项默认情况下处于勾选状态。

您的应用将自动执行运行时检查,以确保设备支持 ARCore 并已将其安装。 如果 ARCore 未安装(可能因为它被用户移除)或版本过旧,您的应用将提示用户安装或更新。 如果安装或更新失败(可能因为网络故障),Session.Status 将返回错误,您的应用应处理错误并退出。

AR 可选

AR 可选是指您的应用包括的一项或多项 AR 功能会在设备支持 ARCore 时启用。 但应用也可在不支持 ARCore 的设备上安装和运行。 当用户安装 AR 可选应用时,应用商店不会自动安装 ARCore

要将应用设置为 AR 可选,请取消选中 Edit > Project Settings > ARCore > ARCore Required 菜单项。

可以使用代码检查,遇到不支持ARCore的设备、没有安装ARCore设备、或者安装ARCore版本过低设备时候,您可以提醒用户安装或更新ARCore,也可以直接跳过AR功能(代码如下)

  /// <summary>检查设备</summary>
    private bool OnCheckDevice()
    {
        if (Session.Status == SessionStatus.ErrorSessionConfigurationNotSupported)
        {
            Debug.Log("ARCore在本机上不支持或配置错误!");
            return false;
        }
        else if (Session.Status == SessionStatus.ErrorPermissionNotGranted)
        {
            Debug.Log("AR应用的运行需要使用摄像头,现无法获取到摄像头授权信息,请允许使用摄像头!");
            return false;
        }
        else if (Session.Status.IsError())
        {
            Debug.Log("ARCore运行时出现错误,请重新启动本程序!");
            return false;
        }

        return true;
    }

官方教程地址:https://developers.google.cn/ar/develop/unity/enable-arcore

欢迎对AR技术感兴趣的朋友,加入QQ群:883655607 讨论 

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DaLiangChen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值