Flutter 安全文件存储
Flutter 安全文件存储的实现。例如,钥匙串的软限制为 4kb。通过使用文件系统,我们可以存储更大的内容。
使用 AES/GCM/NoPadding 加密数据。密钥使用 Random.secure 生成,并使用 flutter_secure_storage 包存储,值为使用 pointycastle 包或 Android 原生进行加密。
用法
它实现为使用与 FlutterSecureStorage 相同的结构,因此您可以轻松地在它们之间切换。但我们也支持 Uint8List 作为输入/输出。
import 'package:flutter_secure_file_storage/flutter_secure_file_storage.dart';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
// Create storage
final storage = FlutterSecureFileStorage(FlutterSecureStorage());
// Read value
final value = await storage.read<String>(key: key);
// Read all values
Map<String, String> allValues = await storage.readAll();
// Delete value
await storage.delete(key: key);
// Delete all
await storage.deleteAll();
// Write value
await storage.write(key: key, value: value);
配置 Android 版本
在 [project]/android/app/build.gradle 中将 minSdkVersion 设置为 >= 18。
android {
...
defaultConfig {
...
minSdkVersion 18
...
}
}