У меня есть приложение для iOS 4.2, и я занимался разработкой в XCode 4.3.3 и тестировал его с помощью iPhone 5.1 Simulator и все работало нормально. Недавно я решил проверить, как приложение работает на iOS 6.0. При этом я сталкиваюсь с двумя проблемами:
-
Итак, я открываю приложение с XCode 4.5 и запускаю его на iPhone 6.0 Simulator. У меня проблемы с запуском приложения. XCode просто говорит: Закончив запуск на iPhone 6.0 Simulator, кнопка остановки серого цвета (например, приложение не работает), а симулятор iPhone просто показывает черный экран, и ничего не происходит. Я должен CMD + Q это. И это для меня ОГРОМНАЯ проблема, так как я успешно запускаю приложение случайно после множества сбоев.
-
В конце концов, иногда приложение запускается без проблем, и я вижу, что эмулятор запускает мое приложение. Применение выполняется только в ландшафтном режиме. Но когда симулятор запускает приложение, он остается в портретном режиме и показывает приложение, предназначенное для пейзажного экрана в портретном режиме. Я установил Поддерживаемые интерфейсные ориентации как в ландшафтных вариантах, так и в Application-Info.plist - эти две ориентации ландшафта также перечислены.
Кто-нибудь знает, что происходит и как можно решить?
Большое спасибо заранее.
[edit # 1: добавлено сообщение "Все выходные консоли" ]
Консольное сообщение (для проблемы 1, которое теперь продолжается) говорит:
error: failed to attach to process ID 0
[edit # 2: Малый прогресс в решении первой проблемы]
Хорошо, странные вещи происходят. Первое, что я сделал для устранения ошибки из edit # 1, было:
В XCode перейдите по ссылке: Продукт → Изменить схему → Запустите [AppName].app → Отладчик и измените его с LLDB на GDB
После этого ошибка из редактирования # 1 исчезла, НО > появилась новая проблема. После запуска приложения теперь я получаю сообщение статуса в XCode: Присоединение к [AppName] и XCode застревает в этом действии.
Если кто-нибудь даст мне ответ, я хочу сказать, что я попробовал все из списка ниже:
- Перейти к окну → Организатор → Производные данные → Удалить
- Перейти к окну → Организатор → [Имя_проекта] и полностью удалить его а затем снова открыть его
- Reset Настройки симулятора iPhone
- Reset Симулятор iPhone + Clean Build + Quit Simulator + Запустить проект
- Выйти из XCode + перезагрузить Mac + повторно открыть XCode и снова запустить приложение
и все виды этих подстановок действий. Просто я всегда вижу эту проблему. Самое лучшее, что случилось со мной, было во время этой комбинации:
Открыть только XCode без открытия проекта → Перейти к окну → Органайзер → [Имя_проекта] и полностью удалить его → Завершить XCode → Открыть симулятор iPhone и настройки reset → Выход из симулятора iPhone → reboot Mac → повторно открыть XCode и запустить приложение
Иногда, в этом случае симулятор успел запустить мое приложение сразу, что отлично. Но после закрытия симулятора и запуска приложения из XCode (без каких-либо действий между этими двумя действиями) XCode снова застрял на Прикреплении к [AppName] и не запускает симулятор с моим приложением.
Хотя симулятор не запускается с моим приложением из XCode, само приложение хранится на симуляторе, и если я запускаю симулятор отдельно и запускаю свое приложение вручную, приложение запускается, но со второй проблемой у меня в описании проблемы - макет вопроса.
[edit # 3: информация о версии XCode]
Я забыл упомянуть мою версию XCode: Xcode Version 4.5 (4G144l)
[edit # 4: "Решение" ]
Я нашел "решение" (я говорю "решение", так как мне не удалось найти его в текущей версии XCode).
Я только что загрузил XCode Version 4.5 (4G182) и нормально запускаю приложение (без изменения отладчика в GDB), и все работает отлично, кроме проблемы с макетами, что определенно присутствует, потому что некоторые изменения, внесенные в iOS 6.0 по сравнению с iOS 5. Я полагаю, это на самом деле является решением, так как эта версия XCode, которую я использовал изначально, не будет использоваться, поскольку это была часть бета-версий.
Итак, первая проблема решена, до сих пор не удалось решить проблему с макетом.
[edit # 5: окончательное решение]
Хорошо, вторая проблема решена. Для всей информации о моей второй проблеме, вот ответ по этой ссылке: http://yusinto.blogspot.de/2012/08/ios-6-auto-rotate-and-orientation.html