Я хочу знать, что можно использовать WebService
, которые генерируют данные динамически на основе динамических полей, и приложение поддерживает его изменения во время разбора? мне не ясно, как я могу использовать веб-сервис, который может быть добавлен позже, поэтому синтаксический анализатор для json в более старой версии приложения больше не будет применяться, и он будет генерировать исключения. Каковы наилучшие методы обработки динамических веб-сервисов и переход на новые изменения в Android? теперь я использую Gson
для разбора json
запросов с предопределенными классами, поэтому все будет понятным для синтаксического анализа, а затем я буду использовать этот класс. любые советы, учебники или образцы для динамического анализа будут оценены.Обработка динамических веб-сервисов
ответ
Возможно, лучше всего включить атрибут версии в сообщение JSON. Затем вы можете проверить версию перед разбором сообщения.
Я работал над приложениями в прошлом, когда мы имели преобразователи, которые могли бы преобразовать из
- версии 1 -> Версия 2
- версия 2 -> Версия 3
- версия 3 -> Версия 4
Таким образом, в вашем приложении вы всегда можете указать код с последней сущностью (то есть версией 4). Если приходит сообщение версии 1, оно передается через 3 конвертера и входит в приложение в виде сообщения версии 4. Если приходит сообщение версии 2, оно проходит только через два преобразователя.
Обратите внимание, что для каждой версии, вероятно, не потребуется новый класс сущностей. В основном, вы будете добавлять поля в разные версии. В этом случае поля могут быть пустыми для более старых версий, которые вы можете кодировать с помощью простых нулевых проверок.
Возможно, вам понадобится набор преобразователей для входящих запросов и исходящих ответов. По пути вы конвертируете старые версии до последней версии. По пути вы преобразуете последний ответ на версию запроса клиента.
- 1. Обработка динамических Xpaths
- 2. Android несколько вебсервисов требуют одного действия
- 3. Обработка динамических маршрутов без сервера
- 4. Обработка динамических идентификаторов и классов
- 5. Обработка имен динамических (предоставленных пользователем)
- 6. Обработка динамических данных из javascript или rails
- 7. Обработка динамических свойств для класса в C++
- 8. Обработка динамических форм на стороне сервера
- 9. Laravel 5: Обработка динамических и статических маршрутов
- 10. Обработка динамических подключений к базе данных
- 11. Обработка ошибок при вызове динамических методов C#
- 12. Обработка нулевых значений в динамических полях поворота
- 13. Обработка динамических пропущенных столбцов в MySQL
- 14. Обработка динамических полей с помощью SQL Server
- 15. Использование углового2. Обработка динамических событий в реальном времени
- 16. Обработка динамических поддоменов в Google App Engine (Java)
- 17. Обработка нескольких уровней динамических атрибутов вложенности с помощью RestKit
- 18. Обработка событий для динамических элементов управления в VB6
- 19. Обработка регистрации QMetaType в Qt5 с помощью динамических подключаемых модулей
- 20. Обработка json, где число динамических массивов json является динамическим
- 21. Обработка уникальных динамических страниц входа в ASP.NET MVC (Архитектура)
- 22. Обработка динамических таблиц в веб-драйвере селена с использованием Xpath
- 23. Управляемая обработка исключений в динамических вызовах с переменными числами параметров
- 24. Обработка эльфов с помощью компоновщиков (как динамических, так и программных)
- 25. Обработка динамических значений в Oracle Apex от PLSQL
- 26. Log4j для создания динамических файлов
- 27. Настройка динамических данных в динамических элементах JQuery
- 28. Максимальный поток в динамических графах
- 29. Обработка полей формы Symfony
- 30. Объявление переменной массива динамических массивов в обработке