Unique identifier for an Android phone

I am creating an Android application that should identify the device by a unique number / line.

I heard about ANDROID_ID , but there are also reports that they may be the same on some phone models or even updates. Another thing is that it is recreated after a factory reset or a system reinstall. I can live with it, although I would prefer it to remain the same.

Is there any other way to identify the phone without asking for more permissions? IMEI requires them (android.permission.READ_PHONE_STATE), but it can scare away users.

How does Shazam do it? I know that he constantly identifies the phone (he remembers that I was a user before he introduced 5 tags per month for new users), although I completely reinstalled the system.

+6
android
source share
2 answers

This question should answer your question.

+2
source share

Why not create a GUID in a file in a well-known place and be your unique identifier? Thus, you have full control and without the need for any increased permissions (except for access to the file system.)

0
source share

All Articles