Android: JSON или XML, кеширование

1

Я работаю над небольшим проектом Android в java, я использую webapi для выделения, чтобы получить данные, с которыми можно поиграть.

Первое, что я замечаю при посещении: https://developer.spotify.com/technologies/web-api/ - это то, что разработчик может использовать xml или json.

То, что я хотел бы сделать, это "кеш" моих данных, поэтому я могу сделать следующее:

  • прочитать одно значение из файла или построить объект на основе разных значений
  • добавьте объект, созданный выше, в lisviewadapter
  • обновить список с обновленным адаптером
  • повторить предыдущие шаги до завершения обработки файла

Я хочу быть как можно быстрее для своих пользователей, чтобы ui обновлялся при разборе и загрузке данных. Для этого я набросал 2 прецедента.

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

Какой тип файла более подходит для моей проблемы? синтаксический анализ xml или разбор json?

Как я могу это разбор? какие инструменты соответствуют моим требованиям?

Какой прецедент лучше использовать?

любые советы, если вы сделали что-то подобное в прошлом?

любое руководство оценено

Теги:
asp.net-web-api
spotify

2 ответа

2
Лучший ответ

Я не делаю никакого различия между XML или JSON. Для кэширования данных у вас есть два варианта. Либо записывайте данные в файл (потребуется репарация файла для извлечения данных (если вы не создадите новый файл, например CSV-данных)), или напишите необходимые данные в базу данных после разбора. Что касается обновления ListView, это зависит от вас на основе количества записей, которые у вас есть.

Android имеет встроенные в XML и JSON синтаксические анализаторы. Вам не нужен GSON.

  • 0
    Прежде всего, спасибо за ваш ответ. Я думаю об использовании sql lite для сохранения данных, как вы упомянули. Но в чем преимущество встроенных парсеров перед GSON? Вы бы предпочли использовать, например, SAX-парсер? и почему? GSON медленный?
  • 1
    Я не использовал GSON, но, похоже, он больше похож на DocumentBuilder который создает XML и анализирует его. Если вам не нужно создавать XML / JSON, просто используйте чистый парсер для извлечения данных. DocumentBuilder намного медленнее и XMLReader чем XMLReader .
1

Я бы порекомендовал JSON, потому что JSON использует меньше клавиш для передачи, а google создал потрясающую библиотеку json parser под названием GSON.

  • 0
    Спасибо за ответ, я посмотрю на реализацию GSON. Каково ваше мнение о кэшировании этих данных json, будет ли легко использовать GSON в сочетании, например, с SQL-lite для сохранения данных?
  • 1
    Хорошо, GSON облегчает создание объектов из JSON и создание JSON из объектов. Он не управляет sql-lite для вас. Так что в этом аспекте JSON не имеет преимущества перед XML. Но легкость доступа к данным JSON вроде облегчает получение данных в sql и из него :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню