Unity/C#开发Oculus VR应用互启动问题咨询
嘿,我来帮你逐个解决这些Oculus跨应用启动的问题,都是开发时常见的卡点:
1. 跨应用启动是不是只有DeepLinking这一种方法?
《Integrate App Deeplinking》里的方案是官方推荐的最可靠也是唯一受支持的方式,尤其是针对未上架商店的应用。其他非官方的野路子(比如直接调用系统启动命令)不仅兼容性极差,还可能触发Oculus的安全限制,完全不建议尝试。所以老老实实用官方的DeepLinking方案就对了。
2. IDE识别不了
ApplicationOptions和Platform类? 这俩类都是Oculus Platform SDK提供的,你肯定是没在项目里集成这个SDK!补一下配置步骤:
- 先在Unity的Package Manager里导入Oculus Integration包(这个包包含了Platform SDK和所有VR开发必需的工具,比单独导Platform SDK更方便)
- 登录Oculus开发者后台,给你的应用创建/获取对应的App ID,然后在Unity的Oculus项目设置里填入这个ID
- 在你的C#脚本顶部加上命名空间引用:
using Oculus.Platform;,这样IDE就能找到这两个类了 - 额外提醒:调用
LaunchOtherApp之前,一定要先初始化SDK:Core.Initialize();,不然会报错
3.
app_id到底是什么,从哪拿? app_id是Oculus给每个开发者应用分配的唯一数字标识符,哪怕你的应用不上架商店,只要在开发者后台创建了应用就能拿到:
- 登录Oculus Developer Dashboard
- 找到你要启动的目标应用(注意是被启动的那个,不是发起启动的源应用)
- 进入应用的「Settings」或者「General」页面,就能看到一串数字格式的
App ID - 注意:源应用和目标应用必须属于同一个开发者账号,或者你已经在目标应用的后台配置了允许源应用启动它的权限,不然会启动失败
另外测试的时候别忘了:两个应用都要安装在同一台Oculus设备上,并且都用开发者签名打包哦!
内容的提问来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

