Четверг, 14 Август 2014 13:55

Dropbox API - синхронизация приложения

Автор 
Оцените материал
(0 голосов)

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

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

API представлен в нескольких вариантах, каждый вариант решает свой спектр задач. Разработчик волен выбрать тот, который отвечает требованиям его приложения. 
Ниже представлен список и краткое описание каждого варианта.

Drop-ins
Состоит из двух вариантов: Chooser и Saver. Являет собой простую кнопку, аналог классической функции открыть/сохранить, с тем отличием, что операции производятся с файлами из персонального облака пользователя Dropbox. Drop-ins удобен в случаях, когда приложение работает с определенными пользовательскими файлами (документами, фотографиями, видео) и таким образом позволяет использовать Dropbox по прямому назначению прямо из Вашего приложения.

Sync API
Позволяет синхронизировать файлы через Dropbox, неявно для пользователя. В отличии от Drop-ins пользователю нет необходимости оперировать определенными файлами, обрабатываемыми приложением. Приложение берет эту часть на себя скрывая вопрос синхронизации. Sync API оперирует определенной папкой в персональном облаке, пользователь может менять местоположение этой папки в облаке без потери функциональности приложения.

Datastore API
Если изменение в файле производится одновременно с разных ситуаций, то может возникнуть конфликтная ситуация. Особенно это актуально, когда в приложении используется база данных - из-за конфликтных ситуаций могут быть потеряны пользовательские данные. Для решения этой проблемы и более удобной синхронизации баз данных разработан Datastore API. В данном API разработчик оперирует набором таблиц, эти таблицы содержат в себе записи, а каждая запись хранит в себе наборы ключ-значение. В отличии от SQL таблицы не объединены единой схемой и являются независимыми друг от друга элементами хранилища. Принцип хранения данных чем-то похож на NoSQL. В Datastore API реализована улучшенная система решения конфликтных ситуаций, конфликтные записи объединяются в соответствии с правилами. Разработчик может назначить приоритет этим правилам, таким образом для разных конфликтных ситуаций будут применяться актуальные для них правила.

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

Работа с Dropbox API начинается с регистрации приложения в консоли приложений (App Console), где фиксируется информация о Вашем приложении - название, производитель, описание, иконка, вариант API. В консоли также можно получить ключ приложения (App key) и секрет приложения (App secret) - кодовые комбинации применяемые при непосредственном использовании Dropbox API. Кроме этого консоль приложения предоставляет информацию об использовании API пользователями Вашего приложения, и лог ошибок.
В самом начале зарегистрированное приложение помечено в консоли как "разрабатываемое". В данном состоянии приложением может пользоваться до 100 человек. Расширить это количество можно после прохождения процедуры публикации. В ходе этой процедуры бренд Вашего приложения будет проверен на соответствие определенным указаниям, дабы Ваша маркетинговая политика не опиралась на известный бренд Dropbox.

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

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

Прочитано 1643 раз
Evgen

Бла бла бла

Сайт: www.facebook.com/joltd
Другие материалы в этой категории: « Вирусы наступают: как защитить смартфон?