2015-03-31 3 views
1

У нас есть два приложения для iOS - бесплатная версия и платная версия. Единственная разница между этими приложениями заключается в том, что бесплатная версия как IAP полностью разблокирует контент.Автосоединение с игровым центром через два приложения для iOS

Один из режимов, в котором игра может быть воспроизведена, - это многопользовательский игровой центр. Пользователи Auto-Matching и Invite Friends отлично работают, когда кто-то пытается сопоставить бесплатное приложение против бесплатного приложения или платного приложения с платным приложением.

Проблема в том, что она никогда не находит Автосогласование, когда пользователь из бесплатного приложения зарегистрирован, а другой игрок платного приложения зарегистрирован. Это не работает ни в Sandbox, ни в производственных средах.

Другая информация Установка:

  • Оба эти приложения находятся в одной и той же игровой центр группы
  • Оба эти приложения имеют общий лидер доски и достижений (который работает отлично)
  • Оба эти приложения многопользовательские Совместимость корректно настраивается друг другом в iTunes Connect.
  • Мы писали в Apple Support об этой проблеме, но они вернулись, сказав, что Game Center работает отлично, а другая настройка в iTunesConnect также кажется прекрасной, они советуют проверять код приложения.

Я пробовал все, но ничего не работает. Вот код, который мы имеем в нашем приложении, чтобы сделать Game Center сопрягая

GKMatchRequest *request = [[[GKMatchRequest alloc] init] autorelease]; 
request.minPlayers = 2; 
request.maxPlayers = 2; 
request.playersToInvite = nil; // This is not null only in case of friend invitations 

GKMatchmakerViewController *mmvc = 
    [[[GKMatchmakerViewController alloc] initWithMatchRequest:request] autorelease]; 
mmvc.matchmakerDelegate = self; 

[_presentingViewController presentViewController:mmvc animated:YES completion:nil]; 

также пытался установить значение для playerGroup имущества GKMatchRequest но не помогли

Вопросов:

  • Есть ли недостающее звено в коде, который мы используем, из-за которого Auto-Match не работает?
  • У кого-нибудь действительно есть это, чтобы сработать? Если да, не могли бы вы поделиться некоторыми примерами кода и/или отсутствующими инструкциями по установке?
+0

Любая помощь по этому вопросу будет принята с благодарностью, любые эксперты Game Center? –

+0

Кто-нибудь понял ответ на эту проблему. Я испытываю точно такую ​​же проблему и не вижу никаких решений.Таблицы лидеров и достижения должным образом распределяются между приложениями, но эти два приложения не могут найти друг друга с помощью API-интерфейса findMatchForRequest GKMatchmaker - однако они не могут найти игроков, использующих одно и то же приложение. – ltm

+0

Нет никакой помощи или отсрочки по проблеме. Мы все еще сталкиваемся с той же проблемой с нашими приложениями. –

ответ

0

Возможно, это не сработает. Игровые группы используются для обмена лидерами, но вы не можете создать запрос соответствия для подключения двух разных приложений. Он даже не будет работать с идентификационными приложениями, если информация о версии (версия И сборка) не совсем то же самое. Это верно для автоматизации, но также не будет перечислять друзей в Интернете или ближайших устройств, которые запускают другую версию приложения.

+0

Согласно документации на яблоки [здесь] (https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/GameKit_Guide/MatchmakingwithGameCenter/MatchmakingwithGameCenter.html#//apple_ref/doc/uid/TP40008304-CH12-SW14) это определенно говорит. - * «Когда вы создаете новую версию игры, вы можете объявить, совместима ли новая версия с более старыми версиями« *. - * «Вы можете создавать отличные игры (с различными идентификаторами пакетов) и по-прежнему позволять им играть друг против друга». * Поэтому я не уверен, правильно ли вы сказали? –

+0

Кроме того, когда мы связались с Apple Support, они заявили, что должны работать в этом прецеденте, но может быть проблема с нашим кодом. –

0

Я нашел ответ на эту проблему. Это связано с приложением приложения двух приложений. Если у них есть другой префикс приложения, он НЕ будет работать. Вы можете изменить свой старый префикс приложения в соответствии с вашим новым префиксом приложения, связавшись с Apple https://developer.apple.com/contact/.

Подробнее можно здесь: https://developer.apple.com/library/ios/technotes/tn2311/_index.html После того, как Apple завершит изменение префикса для старого приложения, они начнут работать без каких-либо изменений кода или даже повторной отправки приложений.

+0

Я проверил, у нас есть тот же префикс приложения в наших приложениях. Но он по-прежнему не соответствует игрокам в разных приложениях. –

Смежные вопросы