android有哪些設備id
Ⅰ 如何獲取Android移動終端設備唯一ID
我自己以前用的一個工具類,用到了uuid,給你一用吧
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.UUID;
import android.content.Context;
public class Installation {
private static String sID = null;
private static final String INSTALLATION = "INSTALLATION";
public synchronized static String id(Context context) {
if (sID == null) {
File installation = new File(context.getFilesDir(), INSTALLATION);
try {
if (!installation.exists())
writeInstallationFile(installation);
sID = readInstallationFile(installation);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
return sID;
}
private static String readInstallationFile(File installation)
throws IOException {
RandomAccessFile f = new RandomAccessFile(installation, "r");
byte[] bytes = new byte[(int) f.length()];
f.readFully(bytes);
f.close();
return new String(bytes);
}
private static void writeInstallationFile(File installation)
throws IOException {
FileOutputStream out = new FileOutputStream(installation);
String id = UUID.randomUUID().toString();
out.write(id.getBytes());
out.close();
}
}
// 調用方法
// 獲取標識
String SerialNumber = "";
SerialNumber = Installation.id(mContext); // 靜態方法,直接調用
Ⅱ Android如何獲取到唯一的設備ID
如果你想要得到設備本身的唯一值, TM.getDeviceId()應該是足夠了。不過顯然的,有些用戶內比其他人更加偏執一些,可以將容這些標識中的一個或者多個進行hash運算就很有用,生成的字元串仍然可以唯一標識該設備,但是不會明確的標識實際的設備。例如,使用String.hashCode(),再加上一個UUID,這里有詳細的代碼》》
Ⅲ 安卓設備的 device id 是什麼,具體有什麼用
用 android 的官方文檔來說,device id 不是用於標識你的設備的。他是標識一個設備的一次刷機行為的。
換句專話說,每次三清,刷機,這個ID會改變,(理論上是如此,當然不排除某些設備沒有按照這個標准實現)
對 Google 來說,第一次使用 android 設備需要輸入 google 帳號,修改 google 主帳號必須「恢復出場設置」(相當於刷機一次),因此對 google 來說一個 device id 實際上對應一個 google 帳號。
記住你的設備不等於記住你的人,因為一個設備可能賣二手,而且一個設備也完全可能給不同的人共用,而且一個人也會經常更換手機(比如我)。
知道你的設備在哪裡也不等於知道你在哪裡,因為一個人完全可以有五個不同的設備都同時在激活狀態,並且他們被放在不同的地理位置(比如我)。
所以總的來說,這個 ID 用的屬人很少,除了 google 應用自身以外。
Ⅳ 如何查看自己安卓手機的Android Device ID
1、打開撥號界面。
(4)android有哪些設備id擴展閱讀:
AndroidID用於唯一識別一部設備的一次刷機行為,雖然不能完全確定該設備的唯一性(真的唯一性是用IMEI號的),但是可以很大程度上過濾重復設備。
這是移動互聯網廣告行業,尤其是CPI廣告的基礎。設備ID非常重要。CPI廣告是根據實際安裝數量計費的,廣告商可以使用androidid來排除重復安裝。傳遞一個AndroidID直接影響到某些廣告是否會被放置在某些位置。
在RTB行業中,有很多提供數據的第三方公司,他們根據AndroidID買賣數據,將各種數據對應給用戶。
Ⅳ Android獲取設備唯一ID的幾種方式
1. The IMEI: 僅僅只對Android手機有效:
TelephonyManager TelephonyMgr = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
String szImei = TelephonyMgr.getDeviceId(); // Requires READ_PHONE_STATE
採用此種方法,需要在AndroidManifest.xml中加入一個許可:android.permission.READ_PHONE_STATE,並且用戶應當允許安裝此應用。作為手機來講,IMEI是唯一的,它應該類似於 359881030314356(除非你有一個沒有量產的手機(水貨)它可能有無效的IMEI,如:0000000000000)。
2. Pseudo-Unique ID, 這個在任何Android手機中都有效
有一些特殊的情況,一些如平板電腦的設置沒有通話功能,或者你不願加入READ_PHONE_STATE許可。而你仍然想獲得唯一序列號之類的東西。這時你可以通過取出ROM版本、製造商、CPU型號、以及其他硬體信息來實現這一點。這樣計算出來的ID不是唯一的(因為如果兩個手機應用了同樣的硬體以及Rom 鏡像)。但應當明白的是,出現類似情況的可能性基本可以忽略。要實現這一點,你可以使用Build類:
String m_szDevIDShort = "35" + //we make this look like a valid IMEI
Build.BOARD.length()%10+ Build.BRAND.length()%10 + Build.CPU_ABI.length()%10 + Build.DEVICE.length()%10 + Build.DISPLAY.length()%10 + Build.HOST.length()%10 + Build.ID.length()%10 + Build.MANUFACTURER.length()%10 + Build.MODEL.length()%10 + Build.PRODUCT.length()%10 + Build.TAGS.length()%10 + Build.TYPE.length()%10 + Build.USER.length()%10 ; //13 digits
大多數的Build成員都是字元串形式的,我們只取他們的長度信息。我們取到13個數字,並在前面加上「35」。這樣這個ID看起來就和15位IMEI一樣了。
Ⅵ 如何查看android的設備id
java獲得android的imei號步驟: 1、許可權添加: <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 2、調用android的api TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); String IMEI = telephonyManager.getDeviceId(); 3、adb命令獲得內: adb shell mpsys iphonesubinfo 4、任何手機都可容以在撥打電話的界面輸入*#06# 來查看IMEI。
Ⅶ 如何獲取android設備id
Android設備不同類型的識別設備ID。
· 唯一編號(,MEID,ESN,IMSI)
· MAC地址
· 序列號
· ANDROID_ID
唯一編號(IMEI,MEID,ESN,IMSI)
說明在以前,當Android設備均作為電話使用時,尋找唯一標識號比較簡單:()可用於找到(取決於網路技術)手機硬體唯一的IMEI,MEID,ESN和IMSI編號。
TelephonyManager.getDeviceId
IMEI,MEID,ESN,IMSI的定義如下:
•IMEI(國際移動設備識別碼)唯一編號,用於識別 GSM,WCDMA手機以及一些衛星電話(移動設備識別碼)全球唯一編號,用於識別CDMA移動電台設備的物理硬體,MEID出現的目的是取代ESN號段(電子序列號)(電子序列號)唯一編號,用於識別CDMA手機(國際移動用戶識別碼)與所有GSM和UMTS網路手機用戶相關聯的唯一識別編號如需要檢索設備的ID,在項目中要使用以下代碼:
•MEID
•ESN
•IMSI
import android.telephony.TelephonyManager;
import android.content.Context;
String imeistring = null;
String imsistring = null;
{
TelephonyManager telephonyManager;
telephonyManager =
( TelephonyManager )getSystemService( Context.TELEPHONY_SERVICE );
/*
* getDeviceId() function Returns the unique device ID.
* for example,the IMEI for GSM and the MEID or ESN for CDMA phones.
*/
imeistring = telephonyManager.getDeviceId();
/*
* getSubscriberId() function Returns the unique subscriber ID,
* for example, the IMSI for a GSM phone.
*/
imsistring = telephonyManager.getSubscriberId();
}
Ⅷ 如何查看自己安卓手機的Android Device ID
方法如下:
1、打開撥號界面。
紅圈圈住的便是Device ID了。
Ⅸ 怎麼獲取android設備id
(1)DEVICE_ID
Android系統為開發者提供的用於標識手機設備的串號
TelephoneManager tm=TelephoneManager.getSystemService(Context.TELEPHONE_SERVICE);
tm.getDeviceId();
缺陷:
(1)非手機設備
(2)許可權問題
(2)ANDROID_ID
在設備首次啟動專時,屬系統會隨機生成一個64位的數字,並把這個數字以16進制字元串的形式保存下來,這個16進制的字元串就是ANDROID_ID
String ANDROID_ID=Setting.System.getString(getContentResolver(),Setting.System.ANDROID_ID);
缺陷:
(1)廠商Bug:不同的設備可能會產生相同的ANDROID_ID
(2)廠商Bug:有些設備返回的值為null
(3)Serial Number
Android系統2.3版本以上可以通過下面的方法得到Serial Number,且非手機設備也可以通過該介面獲取。
String serial=Andorid.os.Build.SERIAL;
Ⅹ 安卓開發設備id干什麼用的
android設備的設備id是惟一確定一台設備的ID標識,即不同的設備是不相同的,不內會重復,容而且是固定不變的,除非刷機。
在開發中,如果現場有多台設備,而程序是無需申請帳號和密碼登陸的那種,就可以利用這個設備ID來區分不同的設備。比如說餐廳里用平板電腦點菜,可以把設備ID跟桌號綁定起來,這樣點餐之後就知道是哪桌在點菜。(這種場合不需要帳號密碼登陸,用設備ID區分最合適了)。