首页 > 解决方案 > 是否有 Unity 2019-Social.localUser.id 获取旧版 gamecenterPlayerId?

问题描述

我已经将 unity 2017.4 更新到 2019.4 并将我的游戏构建到 ios。问题是更改 Social.localuser.id 类型,从“G:xxxxx”开始到“T:xxxxxx”。我搜索了一些研究,发现 Apple 将玩家 ID gameCenter id 更改为 TeamPlayerId、PlayerId。我的游戏已上线,要迁移 Apple 的新 id 类型,至少需要 3 个月使用 gamecenter id 类型。

-- 1. 我怎样才能得到遗留的gamecenterid?

和 API 部分中的 Unity 2020.1.6 发行说明。“iOS:添加:为旧版 Game Center 玩家 ID 添加了公共访问器,让游戏更容易迁移到 iOS 12.4 中的新 ID 类型”。

-- 2. 但我不知道如何获得旧版 Game Center 玩家 ID?

-- 3. 是否有计划更新,unity 2019 lts 版本以获得传统类型的游戏中心玩家 ID?

谢谢你的阅读。

标签: iosiphoneunity3dmobile

解决方案


我不是 100% 确定我是否正确阅读了这个问题,而且我知道这是一个老问题,但我在从 Unity 2018 LTS 迁移到 Unity 2019 LTS 时遇到了类似的问题,我相信接受的答案不包括我曾经让这一切正常工作的选项。

要获取新的 GameCenter ID,您将在 Unity 2019 LTS 中使用此调用

var gameCenterTeamId = Social.Active.localUser;

要获取旧版 GameCenter ID(之前可以通过上述调用在 Unity 2017/2018 LTS 中访问),您可以使用此调用

var legacyGameCenterID = ((UnityEngine.SocialPlatforms.Impl.UserProfile) Social.localUser).legacyId;

第二次通话的文档在这里。Unity 文档建议您仅将用户迁移到新的 GameCenter 团队 ID,因为 iOS 已完全弃用旧的 GameCenter 玩家 ID


推荐阅读