They don't - without special permissions on newer Android versions (10+). There is an ANDROID_ID but it's scoped to your application on Android 8.0+, reinstalling the same app signed with same key will give you the same key but it returns a different value in other apps. This way you can't use for cross-app tracking.
https://developer.android.com/training/articles/user-data-id...
https://developer.android.com/reference/android/provider/Set...