Пакет JSON против SharedPreferences

#flutter #dart

#flutter #dart

Вопрос:

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

До сих пор я нашел только эти 2 способа: использование JSON или использование пакета SharedPreferences.

Ответ №1:

Вы не можете хранить файлы JSON непосредственно во flutter, они будут сериализованы и затем сохранены. Однако, если вы хотите хранить сложные данные (не пару ключ / значение), их будет сложно сохранить SharedPreferences . Однако, поскольку вы упомянули, что хотите хранить списки, я бы настоятельно посоветовал вам не использовать SharedPrefences и использовать более надежные и гибкие решения. Для получения дополнительной информации ознакомьтесь с официальной кулинарной книгой flutter, но имейте в виду, что существуют другие методы, которые могут работать лучше в вашем случае в зависимости от структуры данных и вашего решения для управления состоянием. Пример (повторное и повторное использование сохраняются).

Комментарии:

1. мое приложение является музыкальным проигрывателем, поэтому я просто хочу сохранить пути к песням, чтобы создавать плейлисты, и другие небольшие значения, такие как объем или путь к изображениям. Итак, как сказал @dshukertjr, я должен использовать sqflite

2. В этом случае я бы рекомендовал вам использовать базу данных, такую как SQLite или другие. В кулинарной книге flutter обсуждается, как использовать SQLite здесь , если вам интересно.

Ответ №2:

Если вы хотите хранить сложные данные, sqflite это поможет вам сэкономить время.

https://pub.dev/packages/sqflite

sqflite по сути, это локальная база данных SQL, в которой вы можете хранить и запрашивать данные. Это очень быстро, и вы можете хранить его с большей гибкостью, чем SharedPreferences .