Vì vậy, tôi đã cập nhật cách tôi xác thực người chơi cho người chơi trò chơi và tôi vẫn gặp sự cố khi khởi động.Vấn đề xác thực Gamecenter
Đây là phương pháp mới để tôi xác thực:
- (void) authenticateLocalPlayer
{
GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
localPlayer.authenticateHandler = ^(UIViewController *viewController, NSError *error){
if (viewController != nil)
{
NSLog (@"user not logged in to GC");
}
else if ([GKLocalPlayer localPlayer].isAuthenticated)
{
NSLog(@"gamecenter authentication process succeeded");
}
else
{
NSLog(@"user not authenicated");
}
};
}
Dưới đây là những gì được hiển thị khi nó bị treo:
2014-11-12 16:20:43.295 ZombieConga[7492:881764] -[GKLocalPlayerInternal name]: unrecognized selector sent to instance 0x7974b8c0
2014-11-12 16:20:43.298 ZombieConga[7492:881764] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[GKLocalPlayerInternal name]: unrecognized selector sent to instance 0x7974b8c0'
*** First throw call stack:
(
0 CoreFoundation 0x01ef6946 __exceptionPreprocess + 182
1 libobjc.A.dylib 0x01b8ea97 objc_exception_throw + 44
2 CoreFoundation 0x01efe5c5 -[NSObject(NSObject) doesNotRecognizeSelector:] + 277
3 CoreFoundation 0x01e473e7 ___forwarding___ + 1047
4 CoreFoundation 0x01e46fae _CF_forwarding_prep_0 + 14
5 SpriteKit 0x01a20f82 -[SKNode isEqual:] + 124
6 Foundation 0x015f5612 +[NSObject(NSDelayedPerforming) cancelPreviousPerformRequestsWithTarget:] + 345
7 GameCenterFoundation 0x0b1ef11e -[GKPlayer postChangeNotification] + 45
8 GameCenterFoundation 0x0b209aa8 __52-[GKDaemonProxy setLocalPlayer:authenticated:reply:]_block_invoke + 922
9 libdispatch.dylib 0x0237a30a _dispatch_call_block_and_release + 15
10 libdispatch.dylib 0x0239ae2f _dispatch_client_callout + 14
11 libdispatch.dylib 0x0238190e _dispatch_main_queue_callback_4CF + 606
12 CoreFoundation 0x01e5095e __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 14
13 CoreFoundation 0x01e0f760 __CFRunLoopRun + 2256
14 CoreFoundation 0x01e0ebcb CFRunLoopRunSpecific + 443
15 CoreFoundation 0x01e0e9fb CFRunLoopRunInMode + 123
16 GraphicsServices 0x036dc24f GSEventRunModal + 192
17 GraphicsServices 0x036dc08c GSEventRun + 104
18 UIKit 0x0019f8b6 UIApplicationMain + 1526
19 ZombieConga 0x000f898d main + 141
20 libdyld.dylib 0x023c6ac9 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
Tại sao nó bị rơi?
thêm Điểm ngắt ngoại lệ Tất cả tôi nhận được khi mô tả lỗi tốt hơn – dragoneye
@dragoneye Tất cả tôi nhận được khi tôi làm như vậy là: 2014-11-13 00:17 : 39.341 ZombieConga [7990: 971858] - [GKLocalPlayerInternal name]: bộ chọn không được nhận dạng được gửi tới ví dụ 0x7a920770 – user3593148
xem http://stackoverflow.com/questions/25754403/skspritenode-pools-in-ios-8-seem-to- này được cấp phát-chồng-bộ nhớ – dragoneye