You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
import 'package:flutter/foundation.dart';
|
|
|
|
import 'package:hive/hive.dart';
|
|
|
|
import 'package:path_provider/path_provider.dart';
|
|
|
|
|
|
|
|
import '../model/hive/ContentHive.dart';
|
|
|
|
import '../model/hive/phone_model.dart';
|
|
|
|
|
|
|
|
|
|
|
|
class HiveStore {
|
|
|
|
static Box? _appBox;
|
|
|
|
|
|
|
|
static Box? get appBox => _appBox;
|
|
|
|
static Box? _userBox;
|
|
|
|
|
|
|
|
static Box? get userBox => _userBox;
|
|
|
|
static Box? _dataBox;
|
|
|
|
|
|
|
|
static Box? get dataBox => _dataBox;
|
|
|
|
|
|
|
|
static Future init() async {
|
|
|
|
if (!kIsWeb) {
|
|
|
|
var dir = await getApplicationDocumentsDirectory();
|
|
|
|
Hive.init(dir.path);
|
|
|
|
// Hive.registerAdapter(MyObjectAdapter());
|
|
|
|
Hive.registerAdapter(PhoneModelAdapter()); //HiveTypeId:0
|
|
|
|
Hive.registerAdapter(PhoneNumAdapter()); //HiveTypeId:1
|
|
|
|
Hive.registerAdapter(ContentHiveAdapter());//HiveTypeId:2
|
|
|
|
_appBox = await Hive.openBox('app');
|
|
|
|
_userBox = await Hive.openBox('userBox');
|
|
|
|
_dataBox = await Hive.openBox('dataBox');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|