2011-12-17 4 views
1

Мы разработали приложение для iPad и отправили его в магазин Apple для проверки после надлежащего тестирования в нашем конце. Apple, отклонил наше приложение дает следующую причину: -Apple отклоняет приложение iPad

Мы обнаружили, что ваше приложение не удалось запустить на IPad погонной прошивке 5.0.1, на как Wi-Fi и сотовые сети

Мы столкнулись с проблемой, когда выбрав приложение на главном экране - приложение отображает изображение запуска, а затем неожиданно завершает работу. Это может быть связано с тем, что iOS 5 использует сторожевой таймер для приложений; если приложение занимает слишком много времени, чтобы завершить свой первоначальный запуск, операционная система завершает работу приложения.

Для получения информации о сторожевом таймере, пожалуйста Технической Q & A: Применения не врезаться при запуске из отладчика, но падает при запуске пользователя ..

Другой возможностью может быть недостающим правом. Дополнительную информацию см. В Технической ноте: «0x800003A», приложений, не запускающих и «отсутствующих прав».

Мы не можем понять, почему Apple отклонила приложение, так как мы не можем воспроизвести эту проблему на нашем конце, и обратная связь Apple не очень описательна.

Итак, что мы можем сделать, чтобы решить эту проблему и повторно отправить ее в магазин Apple?

+0

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

+0

Вы тестировали версию своего приложения в дополнение к отладочной версии? –

+0

Можете ли вы опубликовать свое приложениеdidfinishlaunching body body. – ajay

ответ

6

Когда Apple проверила ваше приложение, они попытались запустить его, и он так и не завершил запуск. Если это займет слишком много времени (5-10 секунд), он будет остановлен трамплином и никогда не закончится. Вероятно, это произошло. Возможно также, что у вас были плохие права, но вы, вероятно, столкнулись бы с этой проблемой раньше.

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

+0

спасибо Kalvin. в приложении завершили запуск, мы уже создали второй поток и выполнили всю нашу работу над этим потоком. –

+0

@SandeepDhama. Также обратите внимание, что если вы используете приложение на своем устройстве, выполнив его через Xcode, Xcode отключит сторожевой таймер. Возможно, это и помогло вам в тестировании, но не в конце Apple. Всегда пытайтесь запустить приложение вручную на устройстве после того, как его сильно убили в интерфейсе многозадачности. –

+0

@ Кевин Баллард- Спасибо за вашу помощь. Наши права не были действительны. Мы загрузили старый xCode, чтобы сделать сборку снова и повторно отправить ее. Наше приложение теперь одобрено яблоком. –

2

вам необходимо удалить все синхронные вызовы обновления UI/WEB, которые блокируют applicationDidFinishLaunching: , чтобы вернуть ДА;

applicationDidFinishLaunching должен возвращать как можно скорее, не блокируя приложенную нить, чтобы сказать - 1 секунда.

переместите свой блокирующий код в метод и используйте для этого performSelector afterDelay.

+2

Приложения должны * никогда * блокировать основной поток. – jlehr

+0

идеально ... да !! – samfisher

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