GKPeerPickerController устарел

У меня проблема, когда я использую этот код GKPeerPickerController и GKSession And GKPeerConnectionState

Ошибка, которую я получил: GKPeerPickerController устарела: первая устарела в IOS 7

Мой код:

-(void) receiveData:(NSData *)data fromPeer:(NSString *)peer inSession:(GKSession *)session context:(void *)context {
    NSKeyedUnarchiver *archiver=[[NSKeyedUnarchiver alloc]initForReadingWithData:data];
    NSString *str=[archiver decodeObjectForKey:@"Text"];
    [self adicionarTexto:str fuiEu:NO];
}
-(void)peerPickerController:(GKPeerPickerController *)picker didConnectPeer:(NSString *)peerID toSession:(GKSession *) session {
    currentSession = session;
    session.delegate = self;
    [session setDataReceiveHandler:self withContext:nil];
    picker.delegate = nil;
    [picker dismiss];
}
-(void)peerPickerControllerDidCancel:(GKPeerPickerController *)picker{
    picker.delegate = nil;
    conectado=NO;
}
-(void)session:(GKSession *)session peer:(NSString *)peerID  didChangeState:(GKPeerConnectionState)state {
    if (state==GKPeerStateConnected) {
        conectado=YES;
    }else{
        conectado=NO;

    }
    [self atualizarBarra];
}

А также

 -(void)peerPickerController:(GKPeerPickerController *)picker didConnectPeer:(NSString *)peerID toSession:(GKSession *) session {
 currentSession = session; session.delegate = self; [session
 setDataReceiveHandler:self withContext:nil]; picker.delegate = nil;
 [picker dismiss]; }

А также

-(void)conectar{
    if (conectado==NO) {
        BTpicker = [[GKPeerPickerController alloc] init];
        BTpicker.delegate = self;
        BTpicker.connectionTypesMask = GKPeerPickerConnectionTypeNearby;
        [BTpicker show];  
    }else {
        [currentSession disconnectFromAllPeers];
    }
}

Пожалуйста, мне нужна помощь быстро:(

1 ответ

Я недавно столкнулся с той же проблемой. Вы должны использовать MCBrowserViewController. Посмотрите на мой ответ здесь

Другие вопросы по тегам