Некоторые начальные вопросы по темеNearbyPlayersWithReachableHandler

Я пытаюсь заставить местных сватов работать в GameKit, используя[[GKMatchmaker sharedMatchmaker] startBrowsingForNearbyPlayersWithReachableHandler:], По сути, я пытаюсь реализовать локальные совпадения без интерфейса: пока в моей локальной сети есть игрок, я хочу подключиться и начать матч. Главное, ятолько хочу сделать это для местных игроков: яникогда хотите совпадать автоматически через интернет.

Я включил Game Center для своего приложения в iTunes connect и зарегистрировался для каждой учетной записи песочницы на каждом устройстве, которое я использую для тестирования.

Я пробовал оба сватовства сGKMatchmakerViewController (после проверки подлинности локального игрока) и программного поискаstartBrowsingForNearbyPlayersWithReachableHandler:запускаю один и тот же код на iPhone 4 и iPod Touch 4-го поколения, сидящих рядом на моем столе. Никто никогда не находит другого; когда используешьGKMatchmakerViewController интерфейс для поиска ближайших игроков остается на

Поиск игроков ...

блесна, а при использованииstartBrowsingForNearbyPlayersWithReachableHandler:блок уведомлений никогда не вызывается.

Вот мой текущий блок кода тестирования:

-(void)connectLocal
{
    if( ![GKLocalPlayer localPlayer].isAuthenticated )
    {
        // authenticateLocalPlayer calls connectLocal again after authentication is complete
        [ self authenticateLocalPlayer ];
        return;
    }
    [[GKMatchmaker sharedMatchmaker] startBrowsingForNearbyPlayersWithReachableHandler:^(NSString *playerID, BOOL reachable) {
             NSLog(@"Reachability changed for player %@", playerID );
        } ];
}

Документы немного скудны и запутаны по этому вопросу, особенно когда речь идет о разнице между локальным мультиплеером и матчами через Интернет. Например, кажется необходимым проверить подлинность локального игрока и создать матч, прежде чем найти игроков, которые присоединятся к этому матчу (Создание любого вида совпадения начинается с запроса на совпадение). тем не мениеэтот маленький самородок кажется, предлагает иначе:

Стандартный пользовательский интерфейс позволяет игрокам находить других соседних игроков, даже если ни один из них не подключен к Game Center напрямую.

Кроме того, в потоке, описанном вПоиск ближайших игроковзапрос на совпадение не создается до шага 3,после поиск игроков с помощью блока уведомлений, переданногоstartBrowsingForNearbyPlayersWithReachableHandler:, К сожалению, я никогда не заходил так далеко.

Итак, вопросы:

1) Правильно ли я думаю, что могу позвонитьstartBrowsingForNearbyPlayersWithReachableHandler: до аутентификации местного игрока? GameKit не выдает ошибку, поэтому я предполагаю, что все в порядке. Это может быть опрометчивым предположением. Похоже, аутентифицирую я или нет, не имеет большого значения.

2) Кто-нибудь успешно реализовал локальное автоматическое сопоставление, используя[GKMatchmaker sharedMatchmaker] startBrowsingForNearbyPlayersWithReachableHandler:? Есть ли хороший пример кода где-нибудь, который иллюстрирует весь процесс, от просмотра игроков до начала матча, все программно?

3) В Интернете появляются противоречивые сообщения о том, можно ли тестировать приложения с поддержкой GameKit в симуляторе iOS. Общепринятого мнения нет, и лучше тестировать на оборудовании iOS. Я использую iPhone 4 и iPod Touch 4-го поколения. Для тех, кто успешно протестировал локальный мультиплеер, какую методику и методику тестирования вы использовали?