Я разрабатываю мобильное приложение, которое можно запускать на мобильных устройствах (с ОС, как Android, IOS, WP7 ...). Это приложение будет получать данных из онлайновой базы данных, то хранить их в локальную базу данных в устройстве и я могу сделать CRUD с данными
Nice !!!
Какую технологию я должен использовать для создания веб-сервиса? (RESTful/SOAP ...?)
Я Пойду Для REST услуг.
REST имеет свои преимущества, когда:
- У вас есть набор ресурсов, которые вы хотите манипулировать.
- Вы хотите поддерживать навигацию между ресурсами.
- Вам нужна масштабируемость.
SOAP имеет свои преимущества, когда:
- Вы хотите опубликовать описание веб-сервиса (с помощью WSDL). WSDL 2 также может описывать веб-службу RESTful. WADL является альтернативой WSDL для веб-сервисов RESTful.
- Вы хотите использовать безопасность и т. Д., Которые полагаются на использование заголовков SOAP или аналогичный механизм, в котором данные добавляются и удаляются из запроса.
- Вам нужна лучшая поддержка инструментов.
- Вы хотите проверить совместимость платформы.
Какой тип данных возврата для удобства использования? (XML/JSON? ...)
Я лично пойти на XML Ее не является критерием которого является легко handle.Its о производительности в мобильных приложениях. JSON, как правило, меньше, чем XML-документ, и для более быстрой работы с ним. JSON можно анализировать более эффективно, потому что он может быть проанализирован как JavaScript, который встроенная функция eval() будет делать для вас.
Как синхронизировать между локальной базой данных и базой данных на хосте?
Создайте сервис, который содержит таймер и работает в фоновом режиме. Запустите службу REST с интервалами, чтобы получить последние значения. Но так как это вопрос опроса, то он неэффективен и имеет меньшую производительность. В другом подходе будут использоваться уведомления PUSH. Как только на стороне сервера произойдут какие-либо изменения, отправьте push-уведомление клиенту (мобильному) и, следовательно, выполните операции локальной базы данных.
iOS, Android, WP7 ...принять для загрузки внешнего URL-адреса в приложения?
Я не понял эту точку. Что вы хотите на самом деле?
Должен ли я использовать технологию одностраничных приложений?
Технология одиночной страницы очень хорошая. Но это будет зависеть от вашего бизнеса. Если это возможно, используйте его. Используйте для создания разных HTML-страниц.
Я сделаю заявку с использованием кросс-платформенной платформы и будет работать с локальной базой данных. Я просто обрабатываю синхронизацию между локальной базой данных и базой данных хоста. Проблема: что является лучшей базой данных и лучшей основой для этого?
Выбор базы данных будет зависеть от выбора платформы для мобильной платформы. Phonegap - это именно то, что вам нужно. И база данных будет sqlite. Phonegap предоставляет API для хранения, поэтому вы можете легко получить доступ к базе данных на другой мобильной платформе.
Я знаю, что это старый вопрос, но у нас есть некоторые хорошие решения, доступные сейчас. Мы используем Couchbase Mobile для нашего приложения - репликация в основном похожа на двухстороннюю синхронизацию и требует очень мало кода. Я бы также посмотрел на сторонние службы данных, такие как Firebase или Parse.Большинство из них используют RESTful API с JSON. Держитесь подальше от XML и SOAP, которые представляют собой тяжеловесные решения, часто рекомендуемые предпринимателями Java-разработчиков :-) – Eno