1

在 Game Center 的 Apple 文档中,它说使用此代码来检测 Game Center 是否可用:

+ (BOOL) isGameCenterAvailable {
  Class gcClass = (NSClassFromString(@"GKLocalPlayer"));

  NSString *reqSysVer = @"4.1";
  NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
  BOOL osVersionSupported = ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending);

  return (gcClass && osVersionSupported);
}

但它在我没有游戏中心的 iPhone 3G 上返回 YES。有谁解决了这个问题?

4

3 回答 3

2

实际上,您可以检查您的应用程序是否可以打开游戏中心之一:URL 方案。

BOOL canOpenGC = [[UIApplication sharedApplication] canOpenURL:[NSURL urlWithString:@"gamecenter:/me/account]];

有关此事,请参阅此 StackOverflow 答案

于 2011-11-07T22:42:29.433 回答
1

我没有尝试过,但尝试获取本地播放器单例:

if (![gcClass localPlayer]) {
    // then you havnt got game center support
}
于 2010-10-04T20:12:48.590 回答
0

答案是你不能。Apple 希望我们尝试登录以查看 Game Center 是否存在。奇怪,但就是这样。

于 2010-11-27T20:33:45.510 回答