gpt4 book ai didi

Android 平板电脑 - 获取唯一设备 ID

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:34:39 54 4
gpt4 key购买 nike

我们如何从 Android 平板电脑 (Android 3.0 SDK HoneyComb) 获取唯一设备 ID?

我还发现我们可以使用以下方法获取唯一的 Android 设备 ID:String deviceId = Settings.System.getString(getContentResolver(), 设置.System.ANDROID_ID);

但是Here它写着虽然,不能保证 Android ID 将是唯一标识符。

我也经历了一些 SO 问题:

  1. Is there a unique Android device ID?
  2. How to find serial number of Android device?

还引用了这篇文章:http://android-developers.blogspot.com/2011/03/identifying-app-installations.html .

但我很困惑我们如何从 Android 平板电脑类型的设备中获取/拥有唯一设备 ID?

最佳答案

我知道这个问题很老,但它可能会被找到它的人发现,因为 android ID 不能保证工作,它在某些情况下甚至可能为空,或者在 root 手机上很容易更改。

我所做的是在生成 UUID 的方法中将 Android ID 与 WiFi MAC 地址结合起来:

private void generateDeviceId() {
final String macAddr, androidId;

WifiManager wifiMan = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInf = wifiMan.getConnectionInfo();

macAddr = wifiInf.getMacAddress();
androidId = "" + android.provider.Settings.Secure.getString(getContentResolver(), android.provider.Settings.Secure.ANDROID_ID);

UUID deviceUuid = new UUID(androidId.hashCode(), macAddr.hashCode());

// Maybe save this: deviceUuid.toString()); to the preferences.
}

不要忘记将权限添加到 AndroidManifest。

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 

祝你好运!

关于Android 平板电脑 - 获取唯一设备 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5562516/

54 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com