Ответ 1
Вы проверяете этот блог по ссылке ниже
http://android-developers.blogspot.in/2011/03/identifying-app-installations.html
ANDROID_ID
import android.provider.Settings.Secure;
private String android_id = Secure.getString(getContext().getContentResolver(),
Secure.ANDROID_ID);
Выше приведено ссылку @Есть ли уникальный идентификатор устройства Android?
В частности, Settings.Secure.ANDROID_ID. Это 64-разрядное количество, которое генерируется и сохраняется при первом загрузке устройства. При стирании устройства reset.
ANDROID_ID кажется хорошим выбором для уникального идентификатора устройства. Есть недостатки: во-первых, он не на 100% надежен в выпусках Android до 2.2 ( "Froyo" ). Кроме того, по крайней мере одна широко известная ошибка в популярном телефоне от крупного производителя, где каждый экземпляр имеет тот же ANDROID_ID.
Нижеприведенное решение не является хорошим одним из достоинств , когда вы выжидаете влажные салфетки устройства ( "Factory сбрасывается" ), и, таким образом, вы можете сделать неприятную ошибку, когда один из ваших клиентов вытирает свое устройство и передает его другому человеку.
Вы получаете номер imei устройства, используя ниже
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
telephonyManager.getDeviceId();
http://developer.android.com/reference/android/telephony/TelephonyManager.html#getDeviceId%28%29
Добавить это манифест
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>