У меня появилась фиолетовая рамка в окне приложения «Фотографии»

У меня появилась какая-то фиолетовая рамка предупреждения в моем приложении OS X Photos.

Это было описано в этой ветке сообщества поддержки Apple и получило решение. Проблема была вызвана NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraintsустановкой.

Это скриншот с моего собственного компьютера:

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

Было бы безопасно удалить фиолетовое предупреждение, не решая проблему, вызвавшую его? Почему я вообще получил фиолетовое предупреждение?

Какой аспект безопасности вас беспокоит? Может быть, решение командной строки?
Смотрите мой комментарий к вашему ответу. Спасибо и надеюсь, что ваши каникулы были восхитительными! :)

Ответы (1)

Включение и отключение NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraintsбезопасно. Эта функция позволяет разработчикам отлаживать проблемы макета своего приложения.

Автомакет и ограничения

Компоновка на основе ограничений — это механизм, который Apple рекомендует использовать разработчикам для создания своих пользовательских интерфейсов. В документации для разработчиков этот механизм часто называют Autolayout.

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

Флаг NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraintsявляется одним из таких инструментов, помогающих разработчикам.

Отладка автомакета

Не предназначено для пользователей

Я полагаю, вы не включили NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraintsсебя. Предполагая это, он предполагает, что у инженеров Photos.app есть ошибка автомакета или что какой-то другой процесс включил этот флаг в Photos.app.

В любом случае, фиолетовый интерфейс правильно беспокоил пользователя. Ни один пользователь не должен видеть или нуждаться в этом инструменте отладки. Где-то была допущена ошибка или существует ошибка в OS X.

Безопасно для отключения

Предлагаемое решение в ветке обсуждения удаляет любое значение, связанное с NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints. Это безопасно:

 defaults delete com.apple.Photos NSConstraintBasedLayoutVisualizeMutuallyExclusiveConstraints
Я не понимаю. У меня все еще есть полная функциональность? Если нет, то это то, что я хочу. Спасибо.
Я не уверен, что понимаю. Не стесняйтесь редактировать свой вопрос, чтобы уточнить, что вам нужно решить.
Было ли фиолетовое предупреждение, которое я получил, не настоящим предупреждением о том, что с моим компьютером что-то не так, поэтому я могу его отклонить? Немного небезопасно залезать под капот и менять системные настройки в надежде, что все в порядке. Спасибо!
Вы можете смело вносить defaultsизменения. Apple, скорее всего, исправит проблему в обновлении. Если снова появится фиолетовое предупреждение, добавьте его к этому вопросу, и мы попытаемся найти основную причину.
Вы предполагаете, что это общая проблема, а не только для моего приложения/компьютера. Я до сих пор удивляюсь, что я сделал, что другие не вызвали это. Теперь, когда я запускаю Photos, проблем нет. Странно, ведь я ничего не делал. Я редко открываю приложение, поэтому не могу понять, что вызывает или исправляет его. Спасибо, в любом случае!
Вы правы, я предполагаю, что это общая проблема. Если фотографии были изменены на вашем компьютере, я предполагаю, что подпись кода укажет на проблему при запуске. Если вы считаете, что фотографии могли быть подделаны, проверьте подпись кода. В качестве альтернативы возможно, что другой процесс устанавливает значение отладки по умолчанию. Если вы разработчик, это могло произойти во время отладки другого приложения. Будем надеяться, что проблема решена и ушла навсегда!