0

このコード GKPeerPickerController と GKSession と 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];
    }
}

急いで助けが必要です:(

4

1 に答える 1

1

私は最近同じ問題に直面しました。MCBrowserViewControllerを使用する必要があります。ここで私の答えを見てください

于 2013-10-26T09:21:27.347 に答える