Как запустить приложение в автономном режиме и синхронизировать, когда соединение доступно - PullRequest
0 голосов
/ 26 марта 2019

Я работаю над приложением Inventory для запуска на Android.Я планирую использовать HTML5, JS, pouchdb и couchdb.Хотя я понимаю, что это приложение после подключения к серверу может выйти в автономный режим и работать без какого-либо подключения и выполнить синхронизацию позже, как я могу запустить приложение, если нет подключения к Интернету?

Я пытался использовать некоторые серверы изAndroid Play Store, но я хочу избежать этого.

Приложение должно запускаться без подключения к интернету.Сохраняйте данные локально.Даже после выхода данные должны быть доступны и синхронизироваться, когда станет доступным интернет-соединение.

1 Ответ

1 голос
/ 26 марта 2019

Работа в автономном режиме, а затем синхронизация данных с онлайн-серверами иногда может быть довольно сложной.

Сценарии

Самый рекомендуемый способ сделать это без ущерба для вашего UX - это задаться вопросом о некоторых сценариях, в которых ваше приложение будет работать, например:

  • Вашему пользователю нужно зарегистрироваться или войти в какую-либо службу или учетную запись?
  • Должны ли ваши пользовательские данные быть предварительно зарегистрированы в ваших онлайн-сервисах, прежде чем пользователь сможет начать работать с ними локально?

Возможные решения

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

Мой пользователь должен быть зарегистрирован или авторизован в онлайн-аккаунте, прежде чем начать создавать запасы

Это говорит о том, что ваш пользователь должен иметь подключение к Интернету, когда он запускает ваше приложение в первый раз.

  1. если это действительно так, ваше приложение должно запуститься в первый раз, запрашивая логин или регистр

    • в этом случае, если нет соединения, когда пользователь запускает приложение в первый раз. Ваше приложение должно остановиться на экране входа в систему (это часто используемый поток)
  2. После входа в систему вы должны сохранить пользовательские данные, полученные с онлайн-серверов, в локальном хранилище

  3. Когда пользователь запустит приложение в следующий раз, приложение распознает его автоматически и пропустит экран входа / авторизации.

  4. Ваше приложение должно следовать нормальному рабочему процессу (создание, редактирование, удаление инвентаризаций)

Мой пользователь не должен входить в систему, чтобы создавать инвентаризации в моем приложении

Этот ответ автоматически говорит о том, что ваши пользовательские данные не нужно предварительно регистрировать в Интернете, а затем изменять в автономном режиме, поэтому здесь не требуется Интернет, в том числе при первом открытии приложения пользователем.

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

TL: DR

Во всех этих случаях вы ищете Progressive Web App , PWA - это веб-приложения, которые работают в автономном режиме на стороне клиента.

...