Use Hive for save auth data
This commit is contained in:
parent
67d31493cf
commit
0cf36a53fd
1 changed files with 10 additions and 10 deletions
|
@ -1,5 +1,5 @@
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
import 'package:hive/hive.dart';
|
||||||
|
|
||||||
import 'package:nekoya_app/api/api.dart';
|
import 'package:nekoya_app/api/api.dart';
|
||||||
|
|
||||||
|
@ -11,17 +11,17 @@ String getEncodedSession(userId, sessionToken) {
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> addSession(userId, sessionToken) async {
|
Future<void> addSession(userId, sessionToken) async {
|
||||||
final prefs = await SharedPreferences.getInstance();
|
final box = Hive.box();
|
||||||
|
|
||||||
String session = getEncodedSession(userId, sessionToken);
|
String session = getEncodedSession(userId, sessionToken);
|
||||||
|
|
||||||
await prefs.setString('session', session);
|
box.put('session', session);
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<bool> checkSessionExist() async {
|
Future<bool> checkSessionExist() async {
|
||||||
final prefs = await SharedPreferences.getInstance();
|
final box = Hive.box();
|
||||||
|
|
||||||
if (prefs.containsKey('session')) {
|
if (box.get('session') != null) {
|
||||||
var res = await getSessions(await getSession());
|
var res = await getSessions(await getSession());
|
||||||
|
|
||||||
if (res['statusCode'] == 200) {
|
if (res['statusCode'] == 200) {
|
||||||
|
@ -36,17 +36,17 @@ Future<bool> checkSessionExist() async {
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<String> getSession() async {
|
Future<String> getSession() async {
|
||||||
final prefs = await SharedPreferences.getInstance();
|
final box = Hive.box();
|
||||||
|
|
||||||
if (prefs.containsKey('session')) {
|
if (box.get('session') != null) {
|
||||||
return prefs.getString('session') ?? 'null';
|
return box.get('session', defaultValue: 'null');
|
||||||
}
|
}
|
||||||
|
|
||||||
return 'null';
|
return 'null';
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> removeSession() async {
|
Future<void> removeSession() async {
|
||||||
final prefs = await SharedPreferences.getInstance();
|
final box = Hive.box();
|
||||||
|
|
||||||
await prefs.remove('session');
|
box.delete('session');
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue