import 'package:electronic_assistant/utils/common_utils.dart'; import 'package:electronic_assistant/utils/mmkv_util.dart'; import 'package:uuid/uuid.dart'; class AndroidDeviceInfo { String? _androidId; AndroidDeviceInfo._() { _androidId = KVUtil.getString(AndroidConstants.keyAndroidIdCache, null); } String? get androidId { if (_androidId != null && _androidId!.isNotEmpty) { return _androidId; } _androidId = getAndroidId(); KVUtil.putString(AndroidConstants.keyAndroidIdCache, _androidId); return _androidId; } String getAndroidId() { return const Uuid().v4(); } } class AndroidConstants { static final String keyAndroidIdCache = stringToUnicode("keyAndroidIdCache"); } final androidDeviceInfo = AndroidDeviceInfo._();