Строке состояния не удалось найти кэшированное изображение строки времени. Рендеринг в процессе

Я получаю указанное выше сообщение во время выполнения после обновления до Swift4.1 и Xcode 9.3. До обновления у меня не было этого сообщения в окне консоли.

Строке состояния не удалось найти кэшированное изображение строки времени. Рендеринг в процессе.

появляется каждые несколько минут, пока у меня запущено приложение.

Он видит, что у меня нет негативного побочного эффекта, мое приложение работает, как обычно, я не видел никаких проблем.

Пользуюсь стандартным Статус баром, никак не менял его модифицировать.

Вопрос 1. Возникнет ли проблема из-за этого предупреждения в ситуациях, с которыми я еще не сталкивался?

Вопрос 2. Кто-нибудь знает, как избавиться от этого предупреждения?


person mac_eric    schedule 31.03.2018    source источник
comment
Странный. Я тоже получаю это после обновления своего тестового устройства до iOS 11.3 и Xcode 9.3.   -  person Sudara    schedule 31.03.2018
comment
Я тоже получаю это, пока это кажется безвредным.   -  person Gereon    schedule 31.03.2018
comment
Это происходит раз в минуту (по крайней мере, для меня) сразу после того, как время переходит в новую минуту.   -  person Simon Jenkins    schedule 31.03.2018
comment
Это происходит и в моем случае, но до сих пор не обнаружено проблем, связанных с производительностью и т. Д. Похоже, это ошибка Xcode, и кстати, мы собираемся создать тикет об этом. Насколько я понимаю, если это ошибка Xcode, то она не создаст никаких проблем для вашего проекта.   -  person onCompletion    schedule 31.03.2018
comment
У меня такая же проблема после обновления до Swift 4.1   -  person Wael    schedule 02.04.2018
comment
То же самое для меня;) с Xcode 9.3 и Swift 4.1   -  person Niko Klausnitzer    schedule 03.04.2018
comment
та же проблема с бета-версией Xcode 9.4   -  person fivewood    schedule 12.04.2018
comment
Я запускаю свое приложение на устройстве (емкость iPhone 6 16 ГБ, доступно 5,48 ГБ), и я также видел это предупреждение, но когда я получил это сообщение в журнале консоли Xcode, мое приложение зависло.   -  person Ravi Raja Jangid    schedule 12.07.2018
comment
В самом сообщении нет ничего, что указывало бы на то, что оно помечает ошибку или предупреждение. Больше того, что вводится для помощи в разработке и остается, даже когда оно больше не требуется.   -  person JulianSymes    schedule 21.01.2019


Ответы (6)


Это примечание об ошибке/отладке присутствует в iOS SDK в комплекте с Xcode 9.3+.

Обновление: не исправлено в Xcode 9.4.1 (9F2000)
Обновление: не исправлено в Xcode 10 (10A255)
Обновление: не исправлено в бета-версиях Xcode 11

Я думаю, вы можете смело игнорировать это. Новые версии iOS/macOS иногда содержат информационные сообщения об отладке, и они обычно удаляются в следующем выпуске.

person Lal Krishna    schedule 02.05.2018
comment
Буду ждать стабильного релиза - по крайней мере, мы наконец разберемся с этим. Спасибо за предупреждение. - person mac_eric; 02.05.2018
comment
Эта ошибка НЕ ​​исправлена ​​в версии 9.4 (9F1027a). - person Adam; 04.06.2018
comment
Не исправлено в версии 9.4.1 (9F2000). - person Daniel Springer; 22.06.2018
comment
Комментарий @LalKrishna неточен. Только что протестировано с XCode 9.4.1 на iOS 11.3.1 и 11.4, это произошло на обоих. По крайней мере, при использовании физического iPhone 6 - person Jake T.; 26.06.2018
comment
Я надеюсь, что Apple с выпуском Xcode 10 с этой ошибкой исправила. - person Raju yourPepe; 07.07.2018
comment
Версия 10.0 beta 4, не исправлено - person mkai; 09.08.2018
comment
ребята, это, скорее всего, ошибка uikit (или функция) - person Anton Tropashko; 30.07.2019
comment
Я не знаю, это функция, это должна быть информация об отладке. Я отредактировал ответ. Пожалуйста, проголосуйте, если вы нашли полезным. @AntonTropashko - person Lal Krishna; 30.07.2019
comment
Я уже давно проголосовал. Но сейчас пересматриваю. - person Anton Tropashko; 30.07.2019

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

Перейти к цели -> Информация о развертывании -> Непроверенный «Скрыть строку состояния»

Этот решил мою проблему. Для меня это была настройка «Информация о развертывании».

введите здесь описание изображения

person sRoy    schedule 06.04.2018
comment
Я тестировал с отмеченной и неотмеченной опцией «Скрыть строку состояния». Ни один из вариантов не предотвратил появление сообщения 'Строка состояния не может найти кэшированные ..... ' снова каждую минуту. - person mac_eric; 06.04.2018
comment
Вы проверили info.plist, есть ли что-нибудь добавленное, связанное со строкой состояния? - person sRoy; 06.04.2018
comment
У меня нет ничего в info.plist, связанном со строкой состояния. Я использую строку состояния по умолчанию. - person mac_eric; 07.04.2018
comment
Можете ли вы поделиться версией xcode и устройством, на котором вы это получаете? А также, ваше приложение поддерживает альбомную ориентацию? - person sRoy; 07.04.2018
comment
Я использую Xcode 9.3 (9E145) и имею эту проблему при использовании iPad Air 2 и iPhone 8. Да, приложение поддерживает альбомную и портретную ориентацию. - person mac_eric; 07.04.2018
comment
Не могли бы вы один раз остановить ориентацию и проверить? - person sRoy; 07.04.2018
comment
Переключено только на книжную ориентацию - сообщение все еще возвращается, а затем переключено только на альбомную ориентацию, и сообщение возвращается снова. - person mac_eric; 07.04.2018
comment
Для меня это произойдет, только если я отмечу «Скрыть строку состояния». Позвольте мне проверить с другими настройками. - person sRoy; 07.04.2018
comment
Давайте продолжим обсуждение в чате. - person mac_eric; 07.04.2018
comment
Предупреждение исчезает, когда в plist для внешнего вида строки состояния на основе контроллера View установлено значение True. - person ; 10.04.2018
comment
Спасибо за подсказку, но, к сожалению, мне это тоже не подходит. Сообщение всплывает снова. - person mac_eric; 10.04.2018
comment
Спасибо! Это сработало для меня, на самом деле, сначала оно было отключено, я проверил его и запустил, а затем снова снял флажок, и это сработало. - person Saeed Ir; 08.06.2018

Я также вижу это предупреждение и, отвечая на вопрос 1, я также вижу потенциально очень неприятное поведение, связанное с ним.

Запуск чего-то близкого к базовому образцу приложения Metal с анимированным треугольником, но с

renderPassDescriptor.colorAttachments[0].loadAction = .load

так что кадр не очищается каждый кадр. Кажется, что происходит то, что каждый раз, когда регистрируется предупреждающее сообщение, iOS также путает некоторую часть своего управления состоянием графики, так что я наблюдаю сильное мигание частей изображения (которое затем снова исчезает позже).

Насколько вероятно, что эта ситуация может возникнуть в «настоящем» приложении, я не уверен, но это определенно не то, что вы хотите, чтобы пользователи в конечном итоге увидели.

Я еще не исправил проблему здесь; Настройки «Скрыть строку состояния» и «Требуется полноэкранный режим» не помогают.

person PeterT    schedule 17.04.2018
comment
Конечно, вы не можете это исправить. У вас есть металлическое состояние. У Apple есть состояние GLES для отображения строки состояния, и эти два, по-видимому, сталкиваются. Сообщите им об ошибке, предоставив образец приложения, чтобы помочь им разобраться в реальном случае. Это может не появиться у пользователей ванильного uikit, таких как я. - person Anton Tropashko; 30.07.2019

В моем случае он скрывал навигацию

self.navigationController?.isNavigationBarHidden = false

Когда вы скрываете панель навигации, она также скрывает строку состояния!. просто используйте

self.navigationController?.navigationBar.isHidden = true

вместо. И вы вернете свою строку состояния.

person mehdi    schedule 24.09.2018
comment
Почему в первой строке = false, а во второй = true? Вы пытаетесь запутать читателя, или есть цель. (Если нет смысла, исправьте и напишите true или false в обеих строках.) - person meaning-matters; 11.05.2019

Чтобы ответить на вопрос 2, опираясь на ответ Питера, относящийся к вопросу 1: вы не только не можете избавиться от этого предупреждения, но и не должны, потому что это означает, что основная проблема является чем угодно, только не доброкачественной. По крайней мере, в некоторых сценариях.

Это также означает, что танец инженера полевого цирка DEC, меняющий местами колеса в метаинформации для проекта, по праву сделает вас похожим на клоуна.

person Anton Tropashko    schedule 30.07.2019

Мне удалось избавиться от этого предупреждения, установив флажок «Требуется полноэкранный режим» в разделе Target-> Deployment Info.

Отметка этой опции может иметь некоторые побочные эффекты на iPad, поэтому вы должны делать это с учетом этого.

person Esteban Vallejo    schedule 16.04.2018
comment
Я использую «Требуется полноэкранный режим», но сообщение все еще появляется - person mac_eric; 17.04.2018