如何正确处理GKSession的中断?

时间:2012-11-21 18:09:09

标签: iphone ios networking gamekit gksession

我的在线广播应用正在播放背景音乐。当用户听音乐并退出应用程序(进入背景)以寻找其他地方时,我拆掉了GKSession。这是P2P模式。当用户返回应用程序时,我重新连接GKSession。

这是对的吗?如果电话到达或其他中断发生怎么办?还要杀死GKSession并重新创建?

NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter];

    // Register for notifications when the application leaves the background state
    // on its way to becoming the active application.
    [defaultCenter addObserver:self 
                      selector:@selector(setupSession) 
                          name:UIApplicationWillEnterForegroundNotification
                        object:nil];

    // Register for notifications when when the application enters the background.
    [defaultCenter addObserver:self 
                      selector:@selector(teardownSession) 
                          name:UIApplicationDidEnterBackgroundNotification 
                        object:nil];

1 个答案:

答案 0 :(得分:0)

你做得对。当您的应用处于后台模式时,所有主题都会被暂停,包括GKSession

当您的应用处于非活动状态时,

GKSession仍然有效模式(例如,当它被电话打断时等)。非活动意味着应用程序仍在前台运行,但它没有接收事件。