當前位置:首頁 » 生產設備 » 安卓設備怎麼獲取uuid號

安卓設備怎麼獲取uuid號

發布時間: 2021-02-14 17:41:02

1. Android能夠獲取到唯一的設備ID嗎

能,但是需要說明一下:
1. DEVICE_ID
假設我們確實需要用到真實設備的標識,可能就需要用到DEVICE_ID。在以前,我們的Android設備是手機,這個DEVICE_ID可以同通過TelephonyManager.getDeviceId()獲取,它根據不同的手機設備返回IMEI,MEID或者ESN碼,但它在使用的過程中會遇到很多問題:
非手機設備: 如果只帶有Wifi的設備或者音樂播放器沒有通話的硬體功能的話就沒有這個DEVICE_ID
許可權: 獲取DEVICE_ID需要READ_PHONE_STATE許可權,但如果我們只為了獲取它,沒有用到其他的通話功能,那這個許可權有點大才小用
bug:在少數的一些手機設備上,該實現有漏洞,會返回垃圾,如:zeros或者asterisks的產品
2. MAC ADDRESS
我們也可以通過手機的Wifi或者藍牙設備獲取MAC ADDRESS作為DEVICE ID,但是並不建議這么做,因為並不是所有的設備都有Wifi,並且,如果Wifi沒有打開,那硬體設備無法返回MAC ADDRESS.
3. Serial Number
在Android 2.3可以通過android.os.Build.SERIAL獲取,非手機設備可以通過該介面獲取。
4. ANDROID_ID
ANDROID_ID是設備第一次啟動時產生和存儲的64bit的一個數,當設備被wipe後該數重置
ANDROID_ID似乎是獲取Device ID的一個好選擇,但它也有缺陷:
它在Android <=2.1 or Android >=2.3的版本是可靠、穩定的,但在2.2的版本並不是100%可靠的
在主流廠商生產的設備上,有一個很經常的bug,就是每個設備都會產生相同的ANDROID_ID:9774d56d682e549c
5. Installtion ID : UUID
以上四種方式都有或多或少存在的一定的局限性或者bug,在這里,有另外一種方式解決,就是使用UUID,該方法無需訪問設備的資源,也跟設備類型無關。
這種方式是通過在程序安裝後第一次運行後生成一個ID實現的,但該方式跟設備唯一標識不一樣,它會因為不同的應用程序而產生不同的ID,而不是設備唯一ID。因此經常用來標識在某個應用中的唯一ID(即Installtion ID),或者跟蹤應用的安裝數量。很幸運的,Google Developer Blog提供了這樣的一個框架:

2. 如何獲取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); // 靜態方法,直接調用

3. android怎樣獲取藍牙uuid

import
android.telephony.TelephonyManager;
//引入相抄關包
TelephonyManager
tm
=
(TelephonyManager)
this.getSystemService(TELEPHONY_SERVICE);
tm.getDeviceId();//得到設備唯一ID,(GSM手機的
IMEI

CDMA手機的
MEID)

4. android怎麼獲取當前app的uuid

import android.telephony.TelephonyManager; //引入相關包
TelephonyManager tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);
tm.getDeviceId();//得到設備唯一內ID,(GSM手機的容 IMEI 和 CDMA手機的 MEID)

5. JS怎麼能實現獲取設備的UUID,比如手機訪問這個地址可以獲取它的UUID。

無法做到,包括後端語言也無法在 Web 中獲取 UUID。
基於安全問題,JavaScript 無法獲取內到設備的 UUID,也沒有容介面可以獲取 UUID。
如果 JavaScript 可以輕松做到,安卓設備的 APP 許可權豈不是花瓶?!

6. android 藍牙查找和連接怎麼獲取uuid

看你走什麼協議
比方說你使用下面鏈接這種串口透傳的藍牙模塊通信,那麼UUID就是:
SPP_UUID = "-0000-1000-8000-00805F9B34FB"

7. 如何獲取Android唯一標識

1. DEVICE_ID

假設我們確實需要用到真實設備的標識,可能就需要用到DEVICE_ID。在以前,我們的Android設備是手機,這個DEVICE_ID可以同
通過TelephonyManager.getDeviceId()獲取,它根據不同的手機設備返回IMEI,MEID或者ESN碼,但它在使用的過程中
會遇到很多問題:

非手機設備: 如果只帶有Wifi的設備或者音樂播放器沒有通話的硬體功能的話就沒有這個DEVICE_ID
許可權: 獲取DEVICE_ID需要READ_PHONE_STATE許可權,但如果我們只為了獲取它,沒有用到其他的通話功能,那這個許可權有點大才小用
bug:在少數的一些手機設備上,該實現有漏洞,會返回垃圾,如:zeros或者asterisks的產品。

2. MAC ADDRESS
我們也可以通過手機的Wifi或者藍牙設備獲取MAC ADDRESS作為DEVICE ID,但是並不建議這么做,因為並不是所有的設備都有Wifi,並且,如果Wifi沒有打開,那硬體設備無法返回MAC ADDRESS.

3. Serial Number
在Android 2.3可以通過android.os.Build.SERIAL獲取,非手機設備可以通過該介面獲取。
4. ANDROID_ID
ANDROID_ID是設備第一次啟動時產生和存儲的64bit的一個數,當設備被wipe後該數重置

ANDROID_ID似乎是獲取Device ID的一個好選擇,但它也有缺陷:

它在Android <=2.1 or Android >=2.3的版本是可靠、穩定的,但在2.2的版本並不是100%可靠的
在主流廠商生產的設備上,有一個很經常的bug,就是每個設備都會產生相同的ANDROID_ID:9774d56d682e549c

5. Installtion ID : UUID

8. android如何獲得uuid

所有的設備都可以返回一個 TelephonyManager.getDeviceId()
所有的GSM設備 (測試設備都裝載有SIM卡) 可以返回一個 TelephonyManager.getSimSerialNumber()
所有添加有谷歌賬戶的設備可以返回一個 ANDROID_ID
所有的CDMA設備對於 ANDROID_ID 和 TelephonyManager.getDeviceId() 返回相同的值(只要在設置時添加了谷歌賬戶)

所以如果你想得到設備的唯一序號, TelephonyManager.getDeviceId() 。
代碼如下:
final TelephonyManager tm = (TelephonyManager) getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);

final String tmDevice, tmSerial, tmPhone, androidId;
tmDevice = "" + tm.getDeviceId();
tmSerial = "" + tm.getSimSerialNumber();
androidId = "" + android.provider.Settings.Secure.getString(getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);

UUID deviceUuid = new UUID(androidId.hashCode(), ((long)tmDevice.hashCode() << 32) | tmSerial.hashCode());
String uniqueId = deviceUuid.toString();

最後的deviceID可能是這樣的結果: 00000000-54b3-e7c7-0000-000046bffd97

9. H5用戶在手機瀏覽器訪問網站頁面,如何獲取用戶當前設備的信息uuid

無法做到,包括後端語言也無法在 Web 中獲取 UUID。
基於安全問題,JavaScript 無法獲取到設備的回 UUID,也沒有介面可以獲取 UUID。
如果答 JavaScript 可以輕松做到,安卓設備的 APP 許可權豈不是花瓶?!

10. 如何查看自己安卓手機的Android Device ID

1、打開撥號界面。

(10)安卓設備怎麼獲取uuid號擴展閱讀:

AndroidID用於唯一識別一部設備的一次刷機行為,雖然不能完全確定該設備的唯一性(真的唯一性是用IMEI號的),但是可以很大程度上過濾重復設備。

這是移動互聯網廣告行業,尤其是CPI廣告的基礎。設備ID非常重要。CPI廣告是根據實際安裝數量計費的,廣告商可以使用androidid來排除重復安裝。傳遞一個AndroidID直接影響到某些廣告是否會被放置在某些位置。

在RTB行業中,有很多提供數據的第三方公司,他們根據AndroidID買賣數據,將各種數據對應給用戶。

熱點內容
線切割怎麼導圖 發布:2021-03-15 14:26:06 瀏覽:709
1台皮秒機器多少錢 發布:2021-03-15 14:25:49 瀏覽:623
焊接法蘭如何根據口徑配螺栓 發布:2021-03-15 14:24:39 瀏覽:883
印章雕刻機小型多少錢 發布:2021-03-15 14:22:33 瀏覽:395
切割機三五零木工貝片多少錢 發布:2021-03-15 14:22:30 瀏覽:432
加工盜磚片什麼櫸好 發布:2021-03-15 14:16:57 瀏覽:320
北洋機器局製造的銀元什麼樣 發布:2021-03-15 14:16:52 瀏覽:662
未來小七機器人怎麼更新 發布:2021-03-15 14:16:33 瀏覽:622
rexroth加工中心亂刀怎麼自動調整 發布:2021-03-15 14:15:05 瀏覽:450
機械鍵盤的鍵帽怎麼選 發布:2021-03-15 14:15:02 瀏覽:506