Как мы можем гарантировать, что фотографии контактов будут отображаться на iPhone в полноэкранном режиме или в виде эскизов?

Я заметил, что фотографии контактов на iPhone отображаются в одном из двух режимов:

  1. Миниатюра: небольшое квадратное изображение рядом с именем или номером контакта.
  2. Полноэкранный режим: изображение занимает весь экран, на него накладывается идентификатор вызывающего абонента и элементы управления «Свайп для ответа».

Как телефон определяет, какой режим использовать, не совсем понятно. Например, в этом вопросе , касающемся синхронизации контактов, люди получают разные результаты в зависимости от того, установили ли они фотографию на телефоне, синхронизировали ли ее с Gmail, синхронизировали ли с iCloud и т. д.

Кто-нибудь знает канонические правила, когда изображение контакта появляется в полноэкранном режиме или в виде эскиза? Связано ли это с размером/формой изображения или только с источником изображения?

Можете ли вы уточнить свой вопрос? Вы имеете в виду при ответе/совершении звонка, а не в приложении Контакты, верно?
Да, точно. Фото, которое появляется при входящем (и, полагаю, исходящем) звонке.

Ответы (2)

В моем тестировании 1 изображения, установленные на самом iPhone, постоянно отображаются в полноэкранном режиме, а изображения, установленные в адресной книге OS X и синхронизированные через iCloud, отображаются в виде миниатюр. Любые фотографии, установленные в другом месте, но впоследствии отредактированные на iPhone, также будут отображаться в полноэкранном режиме.

Я не тестировал другие методы синхронизации, но из того, что я читал в другом месте, включая вопрос, который вы указали, я думаю, что метод синхронизации не имеет значения — просто была ли фотография установлена ​​​​на устройстве или на Mac.

Трудно сказать, почему именно без какой-либо инсайдерской информации, но я подозреваю, что это одна из двух причин:

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

  • Намеренно опущено. Поскольку у вас нет возможности предварительно просмотреть обрезку и выравнивание на экране устройства при настройке, было решено сделать изображения, назначенные вне устройства, просто отображаемыми в виде миниатюр, чтобы избежать плохой обрезки или странных соотношений сторон.

В любом случае, если вы хотите согласованности, вы должны установить все изображения контактов на одном устройстве — Mac, если вам нужны миниатюры, или iPhone, если вы хотите полноразмерные изображения.


1 Я тестировал iOS 6.0.1 на iPhone 4S и 10.7.5 на своем Mac.

Хотя я согласен с тем, что вы правы в том, что добавление фотографий на Mac не приведет к тому, что ни одна из ваших фотографий контактов не появится на вашем устройстве (устройствах) iOS (узнал это на собственном горьком опыте), все мои фотографии контактов были добавлены / настроены на точно такое же Устройство iOS, но неизвестно, будет ли фотография больше или меньше!

Мои выводы:

  1. Если фотография появляется в полноэкранном режиме один раз, она всегда будет отображаться в полноэкранном режиме.

  2. Оригинальный источник фотографии (внутренняя камера, jpeg, отправленный по электронной почте и т. д.) не имеет значения в этом вопросе.

    Примечание. Доступ ко всем моим контактным фотографиям был получен из фотопленки iOS с помощью «добавить фото» (я не копировал и не вставлял).

  3. Неважно, удаляете ли вы исходную фотографию из фотопленки или нет после того, как установили фотографию контакта.

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