1

I am looking for a Unique Information that differs for every Android Devices. I like to do it to serve as a security for my app to avoid it from spreading and being used by unwanted users other than those who i want to share my app with. I thought of the following and a problem:

  1. IMEI = Not all of my Clients' Device has a SIM Slot, others have WiFi Tablets.
  2. WiFi/BT MAC = It can easily be altered and changed to another Address using some MAC Changing Software.
  3. Android ID = Given that it is a Unique information that is present among most Android Devices, i have read an article that discusses about the bug that it resets upon factory reset.

So if there is any other idea that i can use as a protection, please refer it to me.

aynber
  • 22,380
  • 8
  • 50
  • 63
n00b
  • 51
  • 2
  • 7
  • Possible duplicate of: http://stackoverflow.com/questions/2785485/is-there-a-unique-android-device-id – woot Sep 07 '14 at 09:06

2 Answers2

0

Settings.Secure#ANDROID_ID returns a unique 64 bit hex string for device

You can get it by:

import android.provider.Settings.Secure;

private String uniqueId = Secure.getString(getContext().getContentResolver(), 
                                           Secure.ANDROID_ID);                                                     
woot
  • 3,671
  • 4
  • 26
  • 39
Bubunyo Nyavor
  • 2,511
  • 24
  • 36
0

You are muddling up two concepts - devices and users. You state that you just want certain users to have access to your app, then ask for ways to limit it to certain devices, with the problems that many device identifiers can change over time. (There's a more fundamental problem than that - users will also change their devices over time as well!)

To limit to just certain users, you can use the Play Store Beta channel - and it's perfectly fine to do this without ever having a production (freely available) version

https://support.google.com/googleplay/android-developer/answer/3131213?hl=en

zmarties
  • 4,809
  • 22
  • 39