0

所以我正在为我的工作构建一个数据收集应用程序,我们希望有两个 ipad 同时运行该应用程序,同时保持相同的信息。所以我用 gamekit 进行了一些测试,我认为它会很好用,但我只能让它在一个视图控制器上运行。我的问题是用户在使用该应用程序时会在三个不同的视图控制器之间冲浪,而我不知道如何维护该会话并发送数据并侦听数据,无论您在哪个页面上。这是 appdelegate 可以维护的东西吗?或者也许是一个单例类?有人能指出我正确的方向吗?谢谢!

4

1 回答 1

0

我会使用 Singleton 类来发送/接收来自游戏套件的命令。该单例也可能发送NSNotifications,因此您可以分配任何视图控制器来接收它们(使它们成为观察者)。我已经在几款游戏中实现了这一点,并且效果很好。

例子:

#define kWGConnectionManagerDidOpenConnection   @"kWGConnectionManagerDidOpenConnection"
#define kWGConnectionManagerDidCloseConnection @"kWGConnectionManagerDidCloseConnection"

typedef enum {
    WGConnectionTypeUndefined,
    WGConnectionTypeServer,
    WGConnectionTypeClient
} WGConnectionType;

@interface WGAPIManager : NSObject {
}
@property (nonatomic, readonly) WGConnectionType connectionType;

+ (WGAPIManager*) sharedInstance;

- (void) sendCommand:(NSString*) command;

所以任何类都可以使用这个单例使用游戏工具包发送命令,并且任何类都可以成为通知的观察者

于 2012-10-24T16:22:36.200 回答