eagletracker/lib/class/preferenceSaved.dart
2024-07-08 14:18:00 +02:00

38 lines
1.1 KiB
Dart

import 'dart:convert';
import 'package:shared_preferences/shared_preferences.dart';
class PreferenceSaved {
int timeTakingPointSecond = 0;
PreferenceSaved({required this.timeTakingPointSecond});
PreferenceSaved.empty();
PreferenceSaved.fromJson(Map<String, dynamic> json) {
timeTakingPointSecond = json['timeTakingPointSecond'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = <String, dynamic>{};
data['timeTakingPointSecond'] = timeTakingPointSecond;
return data;
}
}
Future<PreferenceSaved> restoreLocal() async {
final prefs = await SharedPreferences.getInstance();
final String? encodedData = prefs.getString('preferenceSaved');
if (encodedData != null) {
final Map<String, dynamic> decodedData = jsonDecode(encodedData);
return PreferenceSaved.fromJson(decodedData);
}
return PreferenceSaved(timeTakingPointSecond: 0);
}
Future<void> saveLocal(PreferenceSaved preferenceSaved) async {
final prefs = await SharedPreferences.getInstance();
final String encodedData = jsonEncode(preferenceSaved.toJson());
await prefs.setString('preferenceSaved', encodedData);
}