Приложение из Xcode отлично работает, но версия App Store зависает при загрузке - PullRequest
1 голос
/ 21 декабря 2010

Кто-нибудь когда-нибудь слышал об этом? Я сбит с толку, как и Google.

При отладке на iPhone 4 с iOS 4.1 мое приложение показывает заставку, затем показывает анимацию, когда оно загружается и получает местоположение GPS, и, наконец, переходит в главное меню. Когда я загружаю его из App Store, он никогда не перестает загружаться. Что еще более странно, если я спрячу приложение с постоянной загрузкой, а затем восстановлю его, анимация загрузки зависнет и приложение больше не будет отвечать!

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

РЕДАКТИРОВАТЬ: приложение также было протестировано на iPhone 3 с iOS 4.0 и iOS 4.2.1 и iPhone 4 с iOS 4.0.2 и 4.2.1.

РЕДАКТИРОВАТЬ РЕДАКТИРОВАТЬ: проблема не возникает, если я не загружаю его из магазина приложений. Это делает его чрезвычайно трудным для отладки, но, надеюсь, сужает его для кого-то с большим опытом, чем у меня.

Ответы [ 3 ]

1 голос
/ 21 декабря 2010

Я согласен с Taxman.

Во-первых, убедитесь, что вы тестировали на разных устройствах с разными iOS.

Во-вторых, убедитесь, что ваше приложение должно подключаться к серверам, эти серверы отвечаюттак, как вы ожидали.

В-третьих, исходя из моего опыта, убедитесь, что вы протестировали свое приложение, используя файл Ad Hoc .mobileprovision, отличный от Development .mobileprovision.файл.Xcode будет обрабатывать двоичные файлы по-разному при компиляции.

1 голос
/ 22 декабря 2010

Похоже, что источником проблемы является ошибка в iOS 4.1: https://devforums.apple.com/community/iphone/integration/location

Невозможно получить информацию о местоположении на iOS 4.1

Майкл Юревиц в 5 октября, 2010 13:51

Существует известная проблема в iOS 4.1 где звонки в базовое местоположение не могут успешно, если приложение было удалено с устройства и переустановил. Службы определения местоположения в настройках также могут неправильно показывает, что приложение имеет доступ к информации о местоположении. это проблема устранена в iOS 4.2 beta 2.

Чтобы обойти эту проблему, выберите Сброс предупреждений о местоположении под Настройки> Общие> Сброс.

Как всегда, убедитесь, что ваш делегат основного расположения правильно обрабатывает любые ошибки, возвращенные из -locationManager: didFailWithError: и -locationManager: мониторингDidFailForRegion: withError:.

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

Тем, кто откликнулся на ваши предложения, большое спасибо за ваше время и усилия!

1 голос
/ 21 декабря 2010

Во-первых, похоже, что вы протестировали свое приложение на одном устройстве. Приложения должны тестироваться как минимум на нескольких устройствах, поэтому вы можете отлаживать и понимать внутренние потоки в нескольких случаях.

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

Для меня это звучит как проблема с сервером (отправляете ли вы какой-либо запрос на сервер?), Или, возможно, gps не может остановить поиск ..?

...