До сих пор я использовал Google Sync в качестве учетной записи Exchange для синхронизации контактов между Gmail и моим iPhone. Тем не менее, Google совсем недавно объявил о поддержке синхронизации контактов Gmail с помощью CardDAV , и теперь, согласно странице справки Google, этот метод, по-видимому, является рекомендуемым .
Оба, кажется, работают. Есть ли какие-то явные причины предпочесть одно другому? Каковы известные преимущества или недостатки использования Exchange по сравнению с CardDAV для этой цели? Помимо основ, различаются ли они по способности быстро отправлять обновления с других устройств, разрешать конфликты, обрабатывать необычные поля, экономить заряд батареи и т. д.?
(Было несколько более ранних вопросов о синхронизации контактов iOS/Gmail. Однако все они предшествуют поддержке Gmail CardDAV и, следовательно, не касаются вопроса, который я задаю здесь.)
Я использовал Active Sync с тех пор, как у меня появился мой самый первый iPhone, и перешел на CardDAV в тот день, когда Google объявил о его поддержке. Я могу без сомнения сказать, что CardDAV — это то, что вам нужно.
С CardDAV вы получите гораздо более точную синхронизацию, чем с Active Sync. Во-первых, как уже упоминалось, вы можете синхронизировать более 3 адресов электронной почты. На самом деле, у меня самого 31 адрес электронной почты, и наконец все они синхронизируются с моим iPhone. Что еще более важно, теперь работает двусторонняя синхронизация. Если вы вносите изменения на своем iPhone, это не затирает поле в ваших контактах Google. Например, редактирование адресов электронной почты на вашем устройстве iOS не изменит их метки в Контактах Google на Other
вместо Home
, Work
и любых настраиваемых полей, которые у вас могли быть.
В частности, настраиваемые поля сохраняются в обоих направлениях. Это особенно важно, если вы хотите использовать Siri, чтобы «Отправить электронное письмо моему брату». Поле Brother
в Google Contacts не было правильно импортировано в iOS через Active Sync, и если вы разрешили Siri сохранить имя вашего брата в ваших контактах, импорт обратно в Google Contacts исказил все, включая все другие поля, которые вы не редактировали.
Наконец, телефонные номера также без проблем синхронизируются в обоих направлениях с помощью CardDAV.
Для меня двустороннее редактирование (или его отсутствие) было самой большой проблемой Active Sync. Я никогда не редактировал контакты на своем iPhone с помощью Active Sync, потому что не хотел позже исправлять все поля на рабочем столе. Теперь я могу делать это свободно и не заметил повреждения данных.
Основная претензия людей к CardDAV — отсутствие толчка. Тем не менее, для меня Active Sync push был настолько медленным, что небольшая задержка Fetch почти не имеет значения. Кроме того, мой опыт работы с надежностью Push был далеко не звездным (прежде всего соединения, которые умирают и никогда не восстанавливаются). Я обнаружил, что модель опроса гораздо более надежна.
Чего вы, возможно, захотите избежать при использовании CardDAV, так это обновления контакта в Gmail или на вашем iPhone, а затем немедленного обновления того же контакта в другом. Это, вероятно, приведет к тому, что одна из ваших модификаций будет перезаписана модификацией, сделанной в другом направлении.
Обновление 1: одна странность, которую я обнаружил в двусторонней синхронизации, связана с Google Voice
типом номера телефона. По какой-то причине он не синхронизируется правильно в любом направлении (он становится «Телефоном» на вашем устройстве iOS при вводе в Контакты Google и Other
в Контактах Google при вводе с устройства iOS). Мое единственное предположение может заключаться в том, что это поле имеет особое значение для Google.
Обновление 2: Есть еще одна странность с iPhone
типом номера телефона. Он правильно попадет на ваши устройства iOS, если будет введен как таковой из контактов Google. Однако, если вы укажете iPhone
тип номера телефона с устройства iOS, Google Контакты изменит его на Mobile
. Первоначально указанное устройство iOS iPhone
сохранит его в качестве типа своего номера телефона до тех пор, пока этот контакт не будет снова обновлен либо из контактов Google (без предварительного изменения типа номера телефона на iPhone
), либо с другого устройства iOS. Я рекомендую вводить только iPhone
тип номера телефона из контактов Google. Контакты с этим типом номера телефона также следует редактировать только в Контактах Google, если вы хотите указать iPhone
их номер мобильного телефона.
Я провел тест в Google Contacts: отредактировал один контакт и добавил много номеров, адресов электронной почты, веб-сайтов, адресов и дат. Затем я активировал синхронизацию на своем iPhone и iPad.
Результаты, достижения:
| Exchange | CardDAV
phone numbers | max 6 | no limit? (I entered 12)
email | max 3 | no limit? (I entered 8)
websites | max 1 | no limit? (I entered 4)
addresses | max 3 | no limit? (I entered 6)
dates | max 2 | no limit? (I entered 6)
Exchange — гораздо худший способ синхронизации контактов. Carddav — это открытый стандарт, гораздо более гибкий, чем аналоги Microsoft. Во-первых, он допускает более трех полей для электронных писем и другие произвольные ограничения. Во-вторых, carddav делает гораздо больше категорий полей, таких как номера телефонов, а не обычные домашние, рабочие и другие. Наконец, настраиваемые записи позволяют пользователям добавлять дескрипторы Twitter и многое другое. Другие стандарты, такие как Caldav и IMAP, могут работать синхронно и предлагают более надежные механизмы синхронизации с менее известными проблемами. Эта функция давно назрела.
Мне было интересно то же самое, но сегодня я заметил проблему с моими контактами Google, синхронизированными с Exchange, на моем iPhone 5 под управлением iOS 6.
Я хотел позвонить в пиццерию. У меня была запись контактов в гугле с номером телефона. Я ввел название места («Пицца Марлен») в поле фамилии в Google, так что все название было выделено жирным шрифтом в iOS и было в алфавитном порядке под буквой «М».
Номер телефона не был там на iPhone. Это был пустой контакт, не содержащий ничего, кроме имени. Я проверил еще одну или две компании, которые я ввел таким же образом (с названием компании в поле фамилии в Gmail), и у них также отсутствовал номер телефона на iPhone.
Я переключил синхронизацию контактов на новый метод CardDAV, и эти контакты синхронизировались корректно.
CardDAV действительно правильный путь. К сожалению, аналог Google для синхронизации календаря (CalDAV) реализован настолько плохо, что я искал альтернативы на веб-сайте CalConnect (http://caldav.calconnect.org/implementations/providers.html) и в конечном итоге остановился на fruux. Их реализация на высшем уровне — даже поддерживаются все функции обмена, отличная поддержка, отслеживание устройств с помощью настраиваемых паролей и приятный дизайн. Настоятельно рекомендуется!
Бен Либлит