Files
fcs/lib/helpers/dev_info.dart

33 lines
936 B
Dart
Raw Normal View History

2020-09-10 02:13:22 +06:30
import 'package:device_info/device_info.dart';
import 'dart:io' show Platform;
class DevInfo {
2021-09-10 14:27:38 +06:30
bool? isAndroid;
bool? isIOS;
String? deviceID;
String? id;
String? model;
2020-09-10 02:13:22 +06:30
2021-09-10 14:27:38 +06:30
static DevInfo? _instance;
2020-09-10 02:13:22 +06:30
static Future<DevInfo> getDevInfo() async {
if (_instance != null) return Future.value(_instance);
_instance = DevInfo();
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
if (Platform.isAndroid) {
AndroidDeviceInfo androidInfo = await deviceInfo.androidInfo;
2021-09-10 14:27:38 +06:30
_instance!.deviceID = androidInfo.androidId;
_instance!.id = androidInfo.id;
_instance!.model = androidInfo.model;
2020-09-10 02:13:22 +06:30
} else if (Platform.isIOS) {
IosDeviceInfo iosDeviceInfo = await deviceInfo.iosInfo;
2021-09-10 14:27:38 +06:30
_instance!.deviceID = iosDeviceInfo.identifierForVendor;
_instance!.id = iosDeviceInfo.utsname.release;
_instance!.model = iosDeviceInfo.model;
2020-09-10 02:13:22 +06:30
}
return Future.value(_instance);
}
}