如何测试游戏中心是否可用?

时间:2011-05-26 05:08:59

标签: iphone objective-c game-center

我刚刚在我的应用中实施了游戏中心支持,就像在此处How To Make A Simple Multiplayer Game with Game Center Tutorial: Part 1/2所述。

它被实现为单身人士。在我的app delegate中:

    // At the end of applicationDidFinishLaunching, right before 
    // the last line that calls runWithScene:
    [[GCHelper sharedInstance] authenticateLocalUser];

对方法和属性的一点概述:

@interface GCHelper : NSObject {
    BOOL gameCenterAvailable;
    BOOL userAuthenticated;
}

@property (assign, readonly) BOOL gameCenterAvailable;

+ (GCHelper *)sharedInstance;
- (void) authenticateLocalUser;

@end

由于现在我的app委托中引用了GCHelper,我想知道如果游戏中心可用,如何在其他类(我提交分数)中进行实际测试。

如何在另一个类中获取GCHelper的单例实例?

1 个答案:

答案 0 :(得分:1)

看看我如何在另一个类中获得singleton类的实例:

// DataClass.h

@interface DataClass : NSObject {    

int i;   

}    
@property(nonatomic,assign)int i;    
+(DataClass*)getInstance;    
@end  

// DataClass.m

@implementation DataClass    
@synthesize i;    
static DataClass *instance =nil;    
+(DataClass *)getInstance    
{    
@synchronized(self)    
{    
    if(instance==nil)    
{    

    instance= [DataClass new];    
}    
}    
return instance;    
}    

现在在视图控制器中,您需要将此方法称为:

DataClass *obj=[DataClass getInstance];  
obj.i= // whatever you want;  

每个视图控制器都可以访问此变量。您只需要创建一个Data类的实例。