Медленная производительность приложения в симуляторе iOS 8 с Xcode 6

После обновления до xcode 6 я обнаружил, что при запуске моего приложения под iOS 8 в симуляторе iOS он работал очень медленно, независимо от того, когда я выбираю iPhone или iPad. Но если я выберу его для запуска под iOS 7, он работает нормально. Я думал, что это проблема, связанная с приложением/кодированием, поэтому я попытался развернуть ее на своем ipad с iOS8, и, как ни странно, приложение работает нормально, а не так медленно, как симулятор Кто-нибудь из тех, кто занимается SO, испытывает эту проблему?

Ответы

Ответ 1

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

Процессы, выполняемые в iOS-симуляторе, - это в основном процессы OS X, выполняемые в специально созданной среде выполнения в специальном бутстрапе, чтобы вести себя как iOS, а не OS X. За последние 4 года это произошло в основном из UIKit и аналогичных iOS-структур, построенных поверх OS X Frameworks теперь имеется собственный сервер начальной загрузки (с iOS 7), наш собственный dyld (с iOS 8) и разделяет только ядро ​​хоста и системные библиотеки очень низкого уровня (libSystem с iOS 7 и просто pthreads, syscalls и дети платформы libSystem с iOS 8).

Когда вы тестируете приложение на устройстве, которое в настоящее время не загружается, мы завершаем работу устройства и загружаем новый, и этот процесс может занять от 10 секунд до минуты или 2 до завершения, основываясь главным образом на вашей пропускной способности ввода-вывода на диске и какие другие задачи в вашей системе требуют от него.

Если вы видите основные проблемы с производительностью на SIM-устройстве, которое некоторое время загружалось и не выполнялось каких-либо очевидных фоновых задач (компиляция, rsync, что угодно), используйте sysdiagnose и посмотрите на процессы симулятора в спин-дамп и fs_usage, чтобы увидеть, что может произойти.

Ответ 2

Убедитесь, что "медленная анимация" не выбрана на вкладке "Отладка" в iOS Simulator. Это исправило проблему для меня. Возможно, это произошло случайно.

Ответ 3

Если вы нажмете ⌘T, пока выбран ваш симулятор, он включит "медленную анимацию", которая помещает все в замедленное движение. ⌘T часто используется для открытия новой вкладки браузера, поэтому просто убедитесь, что выбран ваш браузер, а не ваш симулятор.

Ответ 4

Моделирование производительности и устройства разные вещи. Я думаю, вы не должны обращать на это внимание. Эта ошибка может оптимизировать apple