this tutorial을 사용하여 게임을 만들었습니다. 내가 지금처럼 authenticateLocalPlayer
를 호출 할 때 :목표 C GameCenter authenticateHandler 오류
GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
localPlayer.authenticateHandler =
^(UIViewController *viewController, NSError *error) {
[self setLastError:error];
if(viewController != nil) {
[self setAuthenticationViewController:viewController];
} else if([GKLocalPlayer localPlayer].isAuthenticated) {
_enableGameCenter = YES;
} else {
_enableGameCenter = NO;
}
};
나는 오류 얻을 :
-[GKUnauthenticatedPlayerInternal name]: unrecognized selector sent to instance 0x14517e00
을하지만이 같은 [NSThread sleepForTimeInterval:1]
을 추가 할 때 :
GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
[NSThread sleepForTimeInterval:1];
localPlayer.authenticateHandler =
^(UIViewController *viewController, NSError *error) {
[self setLastError:error];
if(viewController != nil) {
[self setAuthenticationViewController:viewController];
} else if([GKLocalPlayer localPlayer].isAuthenticated) {
_enableGameCenter = YES;
} else {
_enableGameCenter = NO;
}
};
그것은 잘 작동을 시작합니다. 이것이 오류를 해결하는 올바른 방법입니까?
NSThread 해킹이 작동하지 않습니다. 혹시 이것에 대한 더 많은 정보를 찾았거나 더 나은 해킹을 찾았습니까? – erdekhayser