0

Game Centerアプリの iTunes Connect で有効にしました。私のゲームセンターでは、ID「level1」、整数で「Level 1」という名前のリーダーボードを作成しました。

私のゲームでは、次のようなスコアを送信しようとしています:

 NSAutoreleasePool   *pool = [[NSAutoreleasePool alloc]init];

    GKScore *scoreReporter = [[[GKScore alloc] initWithCategory:@"level1"] autorelease];

    int64_t score1 =scr;
    scoreReporter.value = score1;
    [scoreReporter reportScoreWithCompletionHandler:^(NSError *error) { 
        if (error != nil) {
            NSLog(@"Submit failed");
        }
        else {
            NSLog(@"Score Submited");
        }
    }];

    [pool release];

しかし、送信に失敗しました。約 30 ~ 40 分前にリーダーボードを作成しましたが、Apple によってまだ有効になっていない可能性がありますか? そうでなければ、何が間違っているのかわかりません。

これが私のエラーです:

エラー: エラー ドメイン = GKErrorDomain コード = 6 「ローカル プレーヤーが認証されていないため、要求された操作を完了できませんでした。」UserInfo=0x1ed4d4a0 {NSLocalizedDescription=ローカル プレーヤーが認証されていないため、要求された操作を完了できませんでした。}

ところで、私はiPhoneでインターネットにアクセスでき、電話でAppleアカウントに接続しています

4

1 に答える 1

0

ゲームセンターでは認証されていませんでしたが、動作するようになりました!

Game Center プログラミング ガイドの例:

- (void) authenticateLocalPlayer
{
    GKLocalPlayer *localPlayer = [GKLocalPlayer localPlayer];
    [localPlayer authenticateWithCompletionHandler:^(NSError *error) {
         if (localPlayer.isAuthenticated)
         {
             // Player was successfully authenticated.
             // Perform additional tasks for the authenticated player.
         }
     }];
}
于 2012-09-27T11:57:04.057 に答える