FLUTTER ECOSYSTEM

GigaDroid/flutter_udid

iOS, Android, Mac, Windows 및 Linux에서 앱 재설치 후에도 지속적인 UDID를 검색하는 플러그인입니다.

flutter_udid 프로젝트 이미지
Stars
285
Forks
86
최근 푸시(UTC)
2026. 7. 14.
프로젝트 상태
활성
Leon Kukuk GitHub avatar
GITHUB User

Leon Kukuk ↗

Germany
언어C++CMakeSwiftRubyDartCKotlinObjective-C

이 저장소가 배포한 패키지

사용 중인 의존성

의존성 목록 4 개
  • flutter{"sdk":"flutter"}
  • crypto^3.0.0
  • flutter_test개발 의존성{"sdk":"flutter"}
  • flutter_lints개발 의존성^5.0.0

원본 README

아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.

README 펼치기 / 접기

flutter_udid

pub package

Plugin to retrieve a persistent UDID across app reinstalls on iOS, Android, Mac, Windows & Linux.

Usage

import 'package:flutter_udid/flutter_udid.dart';

String udid = await FlutterUdid.udid;

This provides an UDID using the format of the corresponding platform.

Platform IDs

Platform Format Source
iOS 7946DA4E-8429-423C-B405-B3FC77914E3E identifierForVendor, saved to Keychain for persistence
Android 8af8770a27cfd182 Settings.Secure.ANDROID_ID
Mac 707E990C-D002-520B-ABA6-4216C6D514BF kIOPlatformUUIDKey
Windows 99A4D301-53F5-11CB-8CA0-9CA39A9E1F01 BIOS UUID
Linux 1124435e065241dcae2241e9caab9a6c Machine ID
iOS Keychain Availability

On iOS, the UDID is stored in Keychain with kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly. This means it is available only after the user has unlocked the device once after reboot, including later background launches while the device is locked. Before the first unlock after reboot, requesting the UDID throws a PlatformException.

Consistent Format

To get a consistent formatting on all platforms use:

import 'package:flutter_udid/flutter_udid.dart';

String udid = await FlutterUdid.consistentUdid;

This will result in an UDID of the following format:

984725b6c4f55963cc52fca0f943f9a8060b1c71900d542c79669b6dc718a64b

Persistence Notes

The UDID can change after a factory reset!

Additionally, if a device has been updated to Android 8.0 through an OTA and the app is reinstalled, the UDID may change as well due to security changes in Android 8.0.

On rooted and jailbroken devices the ID can be changed, so please take this into account. However, it should not be possible to identify as a different device through random guessing because of the complexity of the ID.

Furthermore, the UDID may also change if there is a change in the app's signing signature, for both iOS and Android. Ensure that you always use the same digital signature to sign your app.

Flutter Resources

For help getting started with Flutter, view the online documentation.

For help on editing plugin code, view the documentation.