mirror of
https://github.com/immich-app/immich.git
synced 2024-12-28 22:51:59 +00:00
24 lines
813 B
Dart
24 lines
813 B
Dart
import 'package:flutter_udid/flutter_udid.dart';
|
|
import 'package:hooks_riverpod/hooks_riverpod.dart';
|
|
import 'package:immich_mobile/entities/store.entity.dart';
|
|
|
|
final deviceServiceProvider = Provider((ref) => DeviceService());
|
|
|
|
class DeviceService {
|
|
DeviceService();
|
|
|
|
createDeviceId() {
|
|
return FlutterUdid.consistentUdid;
|
|
}
|
|
|
|
/// Returns the device ID from local storage or creates a new one if not found.
|
|
///
|
|
/// This method first attempts to retrieve the device ID from the local store using
|
|
/// [StoreKey.deviceId]. If no device ID is found (returns null), it generates a
|
|
/// new device ID by calling [createDeviceId].
|
|
///
|
|
/// Returns a [String] representing the device's unique identifier.
|
|
String getDeviceId() {
|
|
return Store.tryGet(StoreKey.deviceId) ?? createDeviceId();
|
|
}
|
|
}
|