SDK 导入
UXR2.0 SDK 使用Unity Package Manager 进行SDK 包管理。
1 配置NPM
1.1 将发布平台切换到Android
使用UXR2.0 SDK 开发的应用运行在YodaOS-Master 系统上,所以需要将发布平台切换到Android。
1.2 配置Package Manager
1)在Project Settings 中找到Package Manager。
2)填写Scoped Registries
- name:任意英文字段即可
- URL:
https://npm.rokid.com/
或http://npm.rokid.com
- Scope(s):
com.rokid
3)保存提交
2 安装SDK
开发者可以通过包名或者UPM 的My Registries 包范围查询进行安装。
使用包名进行添加时,UXR2.0 SDK 的包名为:com.rokid.xr.unity
使用UPM 的My Registries 进行安装:
1)打开Window–>Package Manager 在Packages 类别部分,选择Packages:My Registries。
2)选择Rokid UXR SDK。并点击Install 进行安装。
3)配置Unity Input System
在首次导入UXR2.0 SDK 时,由于已经适配了Unity Input System 的原因,会弹出如下对话框:
点击“Yes”会重启Unity,并应用Unity Input System。
配置项目
1 自动配置
在完成SDK 导入后,正常情况下会直接弹出"UXR SDK | Environment Fix" 窗口,如果未弹出,检查工具栏是否已经有UXR 标签,如果有,可以通过点击UXR–> Env –> Project Enviroment Fix 手动点开Environment Fix 窗口。
点击Accept All 完成自动配置。
2 配置XR-Plugin
在 Project Settings 窗口中选择 XR Plug-in Management。
-
Initialize XR on Startup 选中
-
- Rokid XR Core 选中
Tips:如果未展示该选项或该选项不可选中,注意查看是否已经完成SDK导入。
3 发布配置
UXR2.0 SDK 需要将应用发布为Android 应用,请确保已经完成SDK 导入,并已将发布平台切换至Android。
为完成应用发布,需要自定义启动活动、配置必要权限声明、添加Maven 仓库、配置Android 依赖、配置编译版本。
如果是新建项目,这里针对Unity2020、Unity2021、Unity2022 分别提供了一份配置好的UnityPackage,开发者可以直接通过导入的方式进行配置。
Unity 版本 | 配置文件地址 |
---|---|
Unity 2020 | 配置文件 |
Unity 2021 | 配置文件 |
Unity 2022 | 配置文件 |
Tips: 在使用unitypackage 文件时,可以通过以下方法检查是否配置正确。
Tips:以下内容在新建工程中和配置文件等价
3.1.1 针对Unity2020/2021 版本
需要在Project Settings–> Player–> Publishing Settings 下的Build 子选项中,勾选Custom Main Manifest、Custom Main Gradle Template、Custom Base Gradle Template、Custom Gradle Properties Template。
勾选后,在项目工程的,Assets 下会出现Plugins–> Android 文件夹,该文件夹下的四个文件即为上述配置所引入的配置文件。
3.1.2 针对Unity2022 版本
需要在Project Settings–> Player–> Publishing Settings 下的Build 子选项中,勾选Custom Main Manifest、Custom Main Gradle Template、Custom Gradle Properties Template、Custom Gradle Settings Template。
勾选后,在项目工程的,Assets 下会出现Plugins–> Android 文件夹,该文件夹下的四个文件即为上述配置所引入的配置文件。
3.2 自定义启动活动
为使发布应用可以正常使用,需要将启动活动设置为com.rokid.uxrunityplugin.UXRActivity
。
打开Plugins–> Android –> AndroidManifest.xml 文件,找到Activity 节点,找到application 节点下的activity(android.intent.category.LAUNCHER
)节点,将活动的android:name
属性配置为com.rokid.uxrunityplugin.UXRActivity
。
<activity android:name="com.rokid.uxrunityplugin.UXRActivity"android:theme="@style/UnityThemeSelector"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter><meta-data android:name="unityplayer.UnityActivity" android:value="true" />
</activity>
3.3 配置必要权限声明
在AndroidManifest.xml 中,需要声明必要的权限声明。在manifest 节点下,添加权限声明。
<uses-feature android:name="android.hardware.sensor.accelerometer" android:required="true"/>
<uses-feature android:name="android.hardware.sensor.gyroscope" android:required="true"/>
<uses-feature android:name="android.hardware.usb.host"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
Tips:如果编译版本大于29 需要将applicaiton 标签修改为:
<application android:requestLegacyExternalStorage="true">...
</application>
3.4 添加Maven 仓库
3.4.1 针对Unity2020/2021版本导入
打开Plugins–> Android –> baseProjectTemplate.gradle 添加maven { url 'https://maven.rokid.com/repository/maven-public/' }
仓库,以便可以使用rokid 提供的依赖包。
maven { url 'https://maven.rokid.com/repository/maven-public/' }
Tips:这里以Unity 2021 版本为例
3.4.2 针对Unity2022版本导入
打开Plugins–> Android –> settingsTemplate.gradle 添加maven { url 'https://maven.rokid.com/repository/maven-public/' }
仓库,以便可以使用rokid 提供的依赖包。
maven { url 'https://maven.rokid.com/repository/maven-public/' }
3.5 配置Android 依赖
UXR2.0 SDK 的Android 依赖托管在3.3 中添加的Maven 仓库中。
打开Plugins–> Android –>mainTemplate.gradle 文件,在dependencies 中添加如下依赖:
//核心依赖
implementation 'com.rokid.uxrplugin:rkuxrplugin:2.4.9'
//语音识别依赖
implementation("com.rokid.axr:glassvoice-phone:1.4.2")
Tips:这里以Unity 2022 版本为例
3.6 配置gradleTemplate.properties
添加android.enableJetifier=true
、android.useAndroidX=true
。
Tips:这里以Unity2022为例:
3.7 配置编译版本
为完成编译,当前版本,需要将最低编译版本大于26,目标编译版本设置为28~34。