回答:
いくつかのオプションがあります:
あなたが後で参照したい小さな値を保存したい状況にいる場合。次に、shared_preferencesを使用してデータをKey-Valueデータとして保存する必要があります
ただし、大きなデータを保存する場合は、SQLITEを使用する必要があります。
ただし、オフラインで利用できるFirebaseデータベースはいつでも使用できます
ローカルストレージについて話しているので、いつでもファイルをディスクに読み書きできます
その他の解決策:
sqflite
電話にのみ保存します。firebase
バックエンドでクエリを実行できる中央データベースで同期されます。firebase
また、デバイス間の同期も簡単になります。
flutterの公式プラグインから共有設定を使用できます。 https://github.com/flutter/plugins/tree/master/packages/shared_preferences
Androidでは共有設定、iOSではNSUserDefaultsを使用します。
遅い回答ですが、後でここに訪れる人にも役立つと思います😁..
保存するカテゴリとそれぞれの最適な方法を提供します...
APIトークンやログインデータ(パスワードではなく)などの単純な値のみを保存する必要がある場合は、以下を使用しました。
import 'package:shared_preferences/shared_preferences.dart';
asyncFunc() async { // Async func to handle Futures easier; or use Future.then
SharedPreferences prefs = await SharedPreferences.getInstance();
}
...
// Set
prefs.setString('apiToken', token);
// Get
String token = prefs.getString('apiToken');
// Remove
prefs.remove('apiToken');
shared_preferences
pubspec.yamlに依存関係を追加することを忘れないでください(間隔フォーマットを維持):
dependencies:
shared_preferences: any
ローカルストレージに大量のデータを保存する場合は、sqfliteライブラリを使用できます。セットアップはとても簡単で、私は個人的にいくつかのテストプロジェクトで使用しており、問題なく動作します。
https://github.com/tekartik/sqflite これはチュートリアルです-https://proandroiddev.com/flutter-bookshelf-app-part-2-personal-notes-and-database-integration-a3b47a84c57
クラウドにデータを保存する場合は、firebaseを使用できます。グーグルが提供する確かなサービスです。
素晴らしくクリーンなJSONベースのソリューションでは、ローカルストレージを使用することもできます。