ANDROID_ID is a 64-bit number that should remain constant for the
lifetime of a device. ANDROID_ID seems a good choice for a unique
device identifier because it’s available for smartphones and
tablets.
On Android 8.0 and higher versions of the platform ANDROID_ID is unique to each combination of app-signing key user and device. Values of ANDROID_ID are scoped by signing key and user. The value may change if a factory reset is performed on the device or if an APK signing key changes.
The app can change ANDROID_ID without factory reset.
ROOT permission is mandatory.
On Android 8.0 and higher versions of the platform ANDROID_ID is unique to each combination of app-signing key user and device. Values of ANDROID_ID are scoped by signing key and user. The value may change if a factory reset is performed on the device or if an APK signing key changes.
The app can change ANDROID_ID without factory reset.
ROOT permission is mandatory.