不同版本的回合制Game Center游戏看不到彼此的比赛

问题描述:

每次我将新的版本部署到测试人员时,旧版本的游戏将不再可用.作为测试,我在一个设备上安装了版本63(用agvtool编号),在另一台设备上安装了64.我从64邀请.63没有看到任何内容(既没有游戏中心邀请,也没有使用GKTurnBasedMatchmakerViewController时).所以我安装了64,邀请出现了.

Each time I deploy a new build to testers, games from an older build are no longer available. As a test, I installed build 63 (numbered by agvtool) on one device and 64 on another. I invited from 64. 63 saw nothing (neither a Game Center invite, or when using the GKTurnBasedMatchmakerViewController). So I installed 64, and the invite showed up.

我每次都使用相同的脚本来构建脚本(使用xcodebuild进行存档,然后将.ipa压缩).

I am using a script to build (using xcodebuild to make an archive, and then ZIPping up a .ipa), though it's the same script each time.

我还没有看过任何文档提及此内容,这使我担心一旦游戏进入App Store后就进行更新.

I haven’t seen any documentation that mentions this, and it makes me worry about making updates once the game is in the App Store.

如果两个设备具有相同的版本,那么一切都会正常运行. (而且,如果我从Xcode进行构建并将其复制到连接的设备上,这似乎不是一个相同的问题,尽管它们不是Archive的构建.)这使我认为这不是配置问题(因为配置文件相同)一直使用).

Everything behaves fine if two devices have the same build. (And it doesn't seem to be the same problem if I build from Xcode and have it copy to an attached device — these aren't Archive builds though.) This makes me think it is not a provisioning issue (since the same profile is used all the time).

问题似乎是因为我正在更改CFBundleVersion.这显然是Game Center的未记录的兼容性指标: https://devforums.apple.com/message/690974

Looks like the problem was because I was changing CFBundleVersion. This is apparently an undocumented compatibility indicator for Game Center: https://devforums.apple.com/message/690974