2010-12-13 13 views
1

ローカルプレーヤー認証が機能しているかどうかを検出しようとしていますが、常に肯定的な結果を得ているようです。トレース出力ゲームセンターのlocalPlayerは常に認証されています

//-------------------------------------------------------------- 
- (void)authenticateLocalPlayer 
{ 
    NSLog(@"Authenticating local player %@ (%d)", ([GKLocalPlayer localPlayer].authenticated? @"YES":@"NO"), [GKLocalPlayer localPlayer].authenticated); 
    if ([GKLocalPlayer localPlayer].authenticated == NO) { 
     [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error) { 
      [self callDelegateOnMainThread:@selector(authenticationChanged:) 
            withArg:nil 
            error:error]; 
     }]; 
    } 
} 

//-------------------------------------------------------------- 
- (void)authenticationChanged:(NSError *)error { 
    if (error != nil) { 
     NSLog(@"Error authenticating local player: %@", [error localizedDescription]); 
    } 
    NSLog(@"Authentication changed %@ (%d)", ([GKLocalPlayer localPlayer].authenticated? @"YES":@"NO"), [GKLocalPlayer localPlayer].authenticated); 
} 

私はここしばらく、ネットワークから切断して、このコードをテストされています:

2010-12-13 13:20:59.799 LittleScreams[954:307] Authenticating local player NO (0) 
2010-12-13 13:21:01.616 LittleScreams[954:307] Error authenticating local player: The Internet connection appears to be offline. 
2010-12-13 13:21:01.621 LittleScreams[954:307] Authentication changed YES (1) 

これは明らかに、接続がオフラインであることを見てここで

は、私が使用していたコードですまだプレイヤーを認証しています!何が起きているのか?私はデバイスとシミュレータで同じ結果を得ています。

TIA

+0

私は同様の問題があります。私はGame Centerの機能をテストしており、飛行モードで何が起こっているのかを見たいと思っていました。飛行モードに入る前にGame Centerにログインしていれば、アプリは(もちろん)プレイヤーを許可しませんが、[localPlayer isAuthenticated]を実行すると、Game CenterにログインしているプレーヤーIDでYESが表示されます。あなたの問題に対する解決策は見つかりましたか? – Structurer

答えて

0

私はあなたが、手動でauthenticationChangedを呼び出すゲームキットのプログラミングガイドを見て、私のために働いた手順に従うべきではないと思います。

http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/GameKit_Guide/Users/Users.html

+0

私は実際に手動で呼び出すのではなく、完了ハンドラによってauthenticationChangedが呼び出されます。このコードは、AppleのGKTapperの例に基づいています。http://developer.apple.com/library/ios/#samplecode/GKTapper/Introduction/Intro.html – prisonerjohn

関連する問題