app-starlock/lib/tools/device_info_service.dart

42 lines
1.1 KiB
Dart
Raw Normal View History

2023-07-10 17:50:31 +08:00
import 'dart:io';
import 'package:device_info_plus/device_info_plus.dart';
import 'package:get/get.dart';
import '../../app_settings/app_settings.dart';
import 'app_manager.dart';
import 'store_service.dart';
import 'package:uuid/uuid.dart';
class DeviceInfoService extends GetxService {
static DeviceInfoService get to => Get.find<DeviceInfoService>();
String _deviceID = '';
String get deviceID => _deviceID;
Future<DeviceInfoService> init() async {
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
2023-07-15 15:11:28 +08:00
// String dId = StoreService.to.getDeviceId();
String dId = "";
if(dId.isNotEmpty){
2023-07-10 17:50:31 +08:00
dId = const Uuid().v1();
// StoreService.to.saveDeviceId(dId);
2023-07-10 17:50:31 +08:00
}
_deviceID = dId;
if(Platform.isAndroid){
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
AppPlatform.setBrandString(androidInfo.brand);
AndroidBuildVersion buildVersion = androidInfo.version;
AppPlatform.setSDKInt(buildVersion.sdkInt);
}
if(Platform.isIOS){
IosDeviceInfo iosInfo = await deviceInfo.iosInfo;
}
AppManager().saveDeviceID(deviceID);
2024-04-26 15:38:59 +08:00
AppLog.log(AppManager().deviceId);
2023-07-10 17:50:31 +08:00
return this;
}
}