setValue method

  1. @override
Future<void> setValue(
  1. String key,
  2. Type type,
  3. Object value
)
override

设置指定 key 的值。

key 要设置的键名。 type 值的类型。 value 要存储的值。

Implementation

@override
Future<void> setValue(String key, Type type, Object value) async {
  if (type == String) {
    _mmkv.encodeString(key, value as String);
  } else if (type == int) {
    _mmkv.encodeInt(key, value as int);
  } else if (type == double) {
    _mmkv.encodeDouble(key, value as double);
  } else if (type == bool) {
    _mmkv.encodeBool(key, value as bool);
  } else {
    throw Exception('Unsupported type: $type for key: $key');
  }
  // MMKV 的写入操作是同步的,但为了保持接口一致,返回 Future
  return Future.value();
}