getData<T> static method
Recupera dados de forma segura do banco de dados
Implementation
static Future<T?> getData<T>(
String key, T Function(Map<String, dynamic>) fromJson) async {
if (_database == null) await init();
final List<Map<String, dynamic>> result = await _database!.query(
_tableName,
where: "key = ?",
whereArgs: [key],
);
if (result.isNotEmpty) {
String encryptedValue = result.first["value"];
String decryptedValue = _decrypt(encryptedValue); // Descriptografa
return _deserialize<T>(
decryptedValue, fromJson); // Converte de volta para o objeto
} else {
return null;
}
}