You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unreal 4.26开发Oculus Quest游戏时Cache Achievements返回失败该如何处理?

问题修复方案

根因确认

你观察到的打包生成的临时配置中DefaultPlatformService被覆盖为GooglePlay就是成就功能失效的直接原因:Oculus Online Subsystem未被作为默认在线服务加载,所有成就相关的接口调用自然会失败。你之前可正常完成App Entitlement校验,是因为该校验直接调用Oculus SDK原生接口,不依赖OnlineSubsystem的服务加载逻辑,二者不冲突。

修复操作步骤

  • 禁用Google Play相关插件
    打开UE编辑器的「编辑>插件」页面,在在线平台分类下找到Google Play Games插件,取消勾选后重启编辑器,避免Google Play的构建逻辑强制覆盖平台服务配置。
  • 修正Android平台配置优先级
    打开项目目录下Config/Android/AndroidEngine.ini文件,补充以下配置,强制锁定平台服务映射:
    [OnlineSubsystem]
    DefaultPlatformService=Oculus
    -PlatformServiceMappings=Android:GooglePlay
    +PlatformServiceMappings=Android:Oculus
    
    [OnlineSubsystemOculus]
    bEnabled=true
    OculusAppId=替换为你的实际Oculus App ID
    
    配置中的-操作符会先删除引擎默认的Android平台到GooglePlay的映射,+操作符新增Android平台到Oculus的映射,可避免构建过程中配置被默认规则覆盖。
  • 清理旧构建缓存
    打包前删除项目根目录下的Saved、Intermediate、Binaries/Android三个文件夹,防止旧的缓存配置被复用。
  • 验证成就后台配置
    确认Oculus开发者后台配置的成就ID,与项目中调用接口时传入的ID完全一致,且当前测试用的Oculus账号已被加入该应用的测试人员列表。

后续排查方案

如果完成以上操作后仍调用失败,打包时选择Development模式,连接设备后查看Logcat中LogOnline相关日志,可以明确获取接口调用失败的具体报错原因,比如权限不足、后台配置不匹配等。

内容的提问来源于stack exchange,提问作者RigBone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 08:54:03