Каковы наилучшие технологии удаленного взаимодействия для мобильных приложений?

StackOverflow https://stackoverflow.com/questions/82691

Вопрос

У меня есть серверная часть Java, которая должна предоставлять сервисы клиентам, работающим в следующих средах :

  • J2ME
  • Windows Mobile
  • iPhone

Я ищу лучший инструмент для каждой платформы.
Я не ищу технологию, которая работает везде.
Мне нужно что-то "легкое", адаптированное к низкоскоростному доступу в Интернет.

Прямо сейчас я пользуюсь МЫЛОМ.Он многословен, и его нелегко разобрать на мобильном устройстве.Проблема в том, что я не видел никакой реальной альтернативы.

Существует ли формат, который работает "из коробки" с одной из этих платформ?
Я бы предпочел не использовать раздутую библиотеку, которая значительно увеличит время загрузки приложения.

Кажется, все согласны с JSON.Кто-нибудь внедрил решение на основе JSON, работающее с Objective-C, J2ME, Windows Mobile?

Примечание :пока лучшим решением кажется гессенский.Он хорошо работает на Windows Mobile и Objective-C / iPhone.Большая проблема - это J2ME.Реализация Hessian в J2ME имеет серьезные ограничения.Он не поддерживает сложные объекты.Я написал еще один вопрос по этому поводу.

Если у вас есть какие-либо идеи, мы их очень приветствуем.

Это было полезно?

Решение

Гессенский. http://hessian.caucho.com.Реализации на нескольких языках (включая ObjC), сверхлегкий вес и не требует использования парсеров dom / xml для перевода из wire в объектные модели.Как только мы нашли Hessian, мы забыли, что когда-либо знали XML.

Другие советы

JSON довольно компактен и поддерживается большинством фреймворков.Вы можете передавать данные по протоколу HTTP, используя стандартный ОТДЫХ техники.

Существуют библиотеки JSON для Java, Цель С, и многие другие языки (прокрутите вниз).У вас не должно возникнуть проблем с поиском поддержки фреймворка на стороне сервера, поскольку JSON используется для веб-приложений.

Более старые альтернативы включают обычный XML и XML-RPC (подобно SOAP, но намного проще и с библиотеками для большинства языков).

Хорошей альтернативой был бы REST + XML или JSON.Он делает большие успехи в мире RIA, и его красота заключается в его простоте.Он очень прост в использовании, не требуя каких-либо специальных инструментов.У SOAP есть свои сильные стороны, но лучше всего он работает в среде с мощной инструментальной поддержкой для него.Я предполагаю, исходя из вашего вопроса, что это не так.

Поддерживаю JSON.Я перенесенный тот самый Средство чтения Stringtree JSON для J2ME.Это программа чтения JSON одного класса, которая компилируется в файл класса размером 5 КБ и напрямую отображает структуру JSON в собственные типы CLDC, такие как Hashtable и Vector.Теперь я могу использовать один и тот же сервер как для интерфейса AJAX моего настольного браузера, так и для моего клиента J2ME.

Как насчет простого старого XML (несколько, к сожалению, называемого POX)?

Другим очень полезным вариантом было бы JSON.Существуют библиотеки для каждого отдельного языка программирования.

Возможно, поскольку вы работаете в среде, ограниченной как с точки зрения вычислительных, так и сетевых ресурсов, а также со статически типизированным языком, Google буферы протоколов это было бы предпочтительнее для вас.(Просто не обращайте внимания на RPC crud там;RPC - это привлекательная помеха, а не полезная технология.)

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top