我正在为我的游戏添加游戏中心支持。因为我的游戏可以在iOS版本上运行到3.0版本,所以我想让它在没有game Center的情况下,只在本地保存成就和排行榜。
+ (BOOL) isGameCenterAvailable {
Class playerClass = NSClassFromString( @"GKLocalPlayer" );
if( playerClass != nil && [playerClass localPlayer] != nil ) {
DebugLog( @"Game Center is available" );
return YES;
}
DebugLog( @"Game Center is NOT available" );
return NO;
}
然而,这似乎根本不起作用。一方面,尽管
GKLocalPlayer reference
声明这个类在ios4.1和更高版本中可用,上面的测试在ios4.0中通过(我没有尝试更早的版本)。另一方面,测试也通过了iOS4.1,但不支持Game Center的设备(例如,iPhone3G)。
以编程方式检测Game Center支持的“正确方法”是什么?