公式プラグインのshared_preferencesを使えば、簡単に設定などを保存できますが、これは平文なのでセキュアではありません。
例えばWeb APIにアクセスするためアクセストークンは、iOSであればKeyChainを使うなどして保存する必要があります。
flutter_secure_storageを使うとFlutterからこのKeyChainなどを使うことができます。
https://github.com/mogol/flutter_secure_storage
導入
pubspec.yamlに書いてpackages getします。
1
2
dependencies:
flutter_secure_storage:
Androidの設定
android/app/build.gradleでminSdkVersionを18にします。
バックアップでエラーが出ないようにAndroidManifest.xmlで無効化します。
1
2
android:allowBackup="false"
android:fullBackupContent="false"
値の読み書き
後はコードを書くだけです。
1
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
1
2
3
4
5
6
final storage = new FlutterSecureStorage();
await storage.write(key: 'token', value: 'ABCDE');
String token = await storage.read(key: 'token');
print(token);
これで無事動きました。
1
flutter: ABCDE