[英]Unique ID with combination of App id and Device id for android
如何獲得任何應用程序ID和設備ID組合的唯一ID。 因此,例如,一個應用程序的程序包名稱為“ com.myapp”,而一個Android設備具有唯一的ID(可以是wifi mac地址,藍牙ID或UDID)。 這兩個的組合應該是唯一的。 即使我再次卸載並安裝該應用程序,也應生成相同的ID。 如果還有其他使用相同技術的應用程序且在同一部手機上,則“唯一ID”應與我的應用程序不同,因為它們的包名稱不同。 另外,我應該在不同的手機上為同一應用程序獲得一個不同的ID。
是否有任何本機可用的ID可以滿足我的目的? 任何幫助,將不勝感激。 TIA。
嘗試這個
public static String getUniqueDeviceId(Context mContext) {
String device_id = Settings.Secure.getString(
mContext.getContentResolver(), Settings.Secure.ANDROID_ID);
if ((device_id == null) || (device_id.equals("9774d56d682e549c"))
|| (device_id.length() < 15)) {
device_id = new BigInteger(64, new SecureRandom()).toString(16);
}
Log.d("device_id", device_id);
return device_id;
}
要獲取設備ID,您應該使用
TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String mDeviceID = telephonyManager.getDeviceId();
現在,附加您的應用程序包名稱,以獲取應用程序的唯一ID。 是的,當您卸載並重新安裝應用程序時,此唯一標識符將保持不變。
不要忘記在清單中添加此權限。 感謝@ deepu513的評論。
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.