2009-10-26 2 views
1

피어 피커를 사용하지 않고 새로운 게임을위한 피어 투 피어 연결을 만들고 있습니다. 그러나 나는 여기에 무엇을 넣어야하는지 멍청하다.NSError를 예상하는 메소드에 매개 변수로 전달해야하는 것은 무엇입니까 **?

- (void)session:(GKSession *)session didReceiveConnectionRequestFromPeer:(NSString *)peerID { 
    NSLog(@"I GOTS A CONNECTION REQUEST"); 
    if(connected == YES) { 
     //deny all requests 
    } 
    else if(connected == NO) { 
     [session acceptConnectionFromPeer:peerID error:???]; 
    } 
} 

내가 물음표가있는 곳에 무엇을 넣어야합니까? 설명서에 NSError **가 나와 있습니다.

답변

7

은 너무, NSError *에 대한 포인터입니다 :

NSError* error=nil; 
[session acceptConnectionFromPeer:peerID error:&error]; 
+0

오류가 발생했습니다. 만약 내가 오류를 만들어 내고 싶다면, 정말로 거기에 넣어야 할 것이다. –

+0

슬프게도 UIKit에 AppKit의 presentError : 메소드가 누락되어 직접 오류를 표시하는 데 어려움을 겪습니다. UIAlertView를 사용하면 빠르고 쉽게 UIAlertView를 사용할 수 있습니다. [NSError localizedDescription] –

+0

'-acceptConnectionFromPeer : error :'는 자동으로 재생 된 NSError를 할당합니다. 포인터를 가리킨다. 당신은'if (error) {printf ("ERROR"); }' –

0

오류가 전무로 error를 설정하지가 있다면. 연결 하지 설립에 beeing 이유

error 응용 프로그램 의 나머지 부분에 전달하는 수단이다.

예를 들어, 응용 프로그램이 이미 클라이언트에 연결되어 있기 때문에 응용 프로그램이 연결을 허용하지 않는다는 것을 나타내는 자체 NSError를 굴립니다.

자세한 내용은 iPhone Dev Center 문서 NSError을 참조하십시오.

+0

반환 유형'void'의 메소드에서'nil' (또는 실제로는 아무것도)을 반환 할 수 없습니다. –

관련 문제