iCloud

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

icloud_intro_2x

Для того, чтобы обеспечить такой пользовательский опыт, вполне вероятно, что вам придется пересмотреть способы хранения, доступа и предоставления информации (особенно, созданного пользователями содержимого) в вашем приложении. Чтобы узнать, как установить iCloud в ваше приложение, см. iCloud Design Guide.

Одним из основополагающих аспектов работы пользователей с хранилищем iCloud является прозрачность: В идеале, пользователям не нужно знать, где хранится их содержимое, и им редко надо думать о том, какую версию содержимого они просматривают в данный момент. Следующие указания помогут вам в предоставлении пользователям опыта использования iCloud, которого они ожидают.

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

Уважайте пространство пользователя в iCloud. Важно помнить, что iCloud представляет собой невозобновляемый ресурс, за который пользователи платят. Вы должны использовать iCloud для хранения информации, которую создают и понимают пользователи. Избегайте использования iCloud для хранения ресурсов приложения или содержимого, которое вы можете восстановить. Также имейте ввиду, что когда учётная запись пользователя активна, iCloud автоматически создаёт резервную копию содержимого папки документов вашего приложения. Чтобы избежать чрезмерного использования  пространства пользователя, лучше всего быть разборчивым относительно содержимого, которое вы помещаете в папку документов.

Старайтесь не спрашивать пользователей, какие документы сохранить в iCloud. Как правило, люди ожидают, что всё важное для них содержимое будет доступно через iCloud. Большинству пользователей не нужно управлять хранилищем личных документов, так что вы не должны допускать, чтобы ваше приложение осуществляло этот опыт. Чтобы обеспечить хороший пользовательский опыт, возможно, придется перестроить путь, с помощью которого ваше приложение обрабатывает и предоставляет содержимое, чтобы вы могли выполнять для пользователя больше задач по управлению файлами.

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

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

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

Старайтесь не предоставлять пользователям опцию создания “локального” документа. Независимо от того, поддерживаете ли вы iCloud в своём приложении, вам не следует заставлять пользователей думать в рамках файловой системы конкретного устройства. Вместо этого, вам нужно, чтобы пользователи сфокусировались на повсеместной доступности своего содержимого через iCloud.

При необходимости обновляйте содержимое автоматически. Лучше всего, когда пользователям не нужно ничего предпринимать, чтобы удостовериться, что они получают доступ к самому актуальному содержимому в вашем приложении. Тем не менее, необходимо сбалансировать это знание с уважением пространства пользовательского устройства и ограничением пропускной способности. Если ваши пользователи работают с очень большими документами, возможно, будет логичным предоставить им контроль над загрузкой обновлений из iCloud. Если вам нужно сделать это, спроектируйте способ идентификации более поздних версий документа, доступных для скачивания. Когда пользователь выбирает обновление документа, необходимо обеспечить незаметную обратную связь, если загрузка занимает более нескольких секунд.

Предупреждайте пользователей о последствиях удаления документа. Когда пользователь удаляет документ в приложении, которое использует хранилище iCloud, этот документ будет удален из пользовательского аккаунта iCloud и со всех остальных устройств. Уместно отобразить предупреждение, которое описывает этот результат, и получить подтверждение перед удалением.

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

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

Copyright © 2016. iOSManual Все авторские права защищены