Моя игра для iOS нормально запускается в GSM, но не работает в CDMA

Мы создали игру (через пару недель она будет отправлена ​​в Apple) и все это время мы занимались тестированием/отладкой игр на телефонах GSM (AT&T). Один из пользователей получил новый iPhone 4 на Verizon. Когда он в сети 3G, игра запускается в меню, но если пользователь нажимает «Играть», ничего не происходит. Однако, если он подключается к сети Wi-Fi, а затем нажимает Play, игра запускается нормально.

Кто-нибудь сталкивался с чем-то подобным? Мы почти уверены, что это проблема с программным обеспечением, но искали в Интернете любую информацию о том, в чем именно заключается проблема.


person masterclam    schedule 18.11.2011    source источник
comment
Не зная, что делает Play, может быть трудно сузить круг поиска. Он транслирует видео из Интернета? Сделать что-то еще? Учитывая, что сеть Verizon не позволяет одновременно использовать телефон и сети передачи данных, может ли это быть фактором? Удалось ли вам воспроизвести эту проблему более чем на одном телефоне Verizon и убедиться, что это не просто проблема конфигурации, такая как отключение сотовых данных?   -  person Duncan Babbage    schedule 19.11.2011
comment
Спасибо за продолжение. Это не сотовые данные, мы проверили это. :) Это игра, которая использует GPS для отслеживания местоположения пользователя в реальном времени, чтобы поместить его в игру с открытым миром с другими пользователями. Что я имею в виду под Play, так это то, что приложение запустится, и пользователь окажется на экране своего меню. Когда они нажимают Play, чтобы фактически инициализировать GPS и войти в игровой мир, ничего не происходит. На бэкенде они не подключаются к нашему серверу, ничего. Мы подумали, что это может быть связано с тем, что Verizon не разрешает использовать телефон и данные, но как это будет связано с GPS? Разве это не просто данные?   -  person masterclam    schedule 19.11.2011
comment
Вы уже пробовали отлаживать его телефон? Если да, какие выводы из этого?   -  person pepsi    schedule 19.11.2011
comment
ну, это немного сложно, потому что он физически находится в другом месте, чем наш инженерный офис, поэтому у него нет с собой исходного кода.   -  person masterclam    schedule 19.11.2011


Ответы (2)


Мы узнали проблему! Мы сменили порты. CDMA (Verizon) не любит порт 4444, поэтому мы перешли на другой (случайный) порт 32545 и успешно! Спасибо всем и помните, детишки, CDMA не работает на порту 4444.

person masterclam    schedule 22.11.2011

Вам нужно выяснить, что конкретно в вашем приложении вызывает сбой запуска игры. Если вы ничего не регистрируете, предположительно существует ошибка, которая не обрабатывается.

Учитывая, что для запуска игры требуется геолокация, я предполагаю, что на телефоне Verizon получение точного определения местоположения занимает больше времени, чем ожидает ваше приложение, и тайм-аут молча истекает, или что изначально он возвращает местоположение 0,00000000, 0,00000000, а ваше приложение не работает. не нравится это. При использовании Wi-Fi службы определения местоположения могут предоставлять мгновенную первоначальную оценку местоположения на основе известного местоположения сети Wi-Fi, что позволит избежать этой проблемы.

Один из способов проверить это — жестко закодировать местоположение или задать начальное местоположение в приложении при запуске и посмотреть, решит ли это проблему.

person Duncan Babbage    schedule 18.11.2011
comment
поскольку человек, у которого возникла эта проблема, находится в другом офисе, очень далеко от наших инженеров, и он не инженер (например, с ним нет комплекта отладки), мы не можем просто сказать «отладить». но мы обязательно воспользуемся вашими предложениями и посмотрим, что получится. Мы заставили его подключиться через Wi-Fi, а затем блуждать, пока он не переключился на 3G. В тот момент, когда он переключился на 3G, мы могли видеть, что на стороне сервера он не был отключен, но он также не обновлялся. Как только он вернулся в зону действия wi-fi, он снова начал обновляться. - person masterclam; 19.11.2011
comment
Хорошо, проблема не в тайм-аутах, а в том, что телефон ничего не отправляет на сервер. Он не отключен, но он также ничего не отправляет и ничего не получает. - person masterclam; 21.11.2011