Мое приложение для Android работает с базой данных SQLite, которая хранится локально на устройстве. Теперь я хочу переключиться на базу данных MySQL, которая работает на веб-сервере.
До сих пор, работая с локальной базой данных, вся обработка данных результатов запроса (некоторая визуализация ListView, некоторая часть вычислений) основана на объекте курсора, возвращаемом CursorLoader.
Мой вопрос: если я переключаюсь на веб-базу данных, как мне обработать данные JSON, полученные от API, чтобы получить курсор? Должен ли я просто JSON-декодировать его, а затем использовать его как объект курсора? Это возможно? В противном случае мне пришлось бы реструктурировать весь мой код, чтобы обрабатывать JSON-данные вместо курсора … Если возможно, я бы хотел этого избежать.
Пока что модуль базы данных приложения основан на Async CursorLoader, который в результате дает курсор. Я использую SQLiteOpenHelper для подключения к базе данных и запросов.
Я установил базу данных MySQL на веб-сервере, доступ к которой будет осуществляться через http через API (PHP). PHP-скрипт выполняет все MySQL-запросы через PDO, затем JSON-кодирует результаты и возвращает их клиенту.
Задача ещё не решена.
Других решений пока нет …