gpt4 book ai didi

android - 如何在 Android 10 中获取有关手机 IMEI 的信息?

转载 作者:行者123 更新时间:2023-11-29 16:28:51 25 4
gpt4 key购买 nike

在 Android 10 之前,我使用的是 TelephonyManager用于检索该信息的 API,但它不再适用于 Android 10。

最佳答案

我面临着同样的问题,但就我而言,我有一种返回 UUID 的“备份”代码。这是您可以使用的代码:

String uniqueID = UUID.randomUUID().toString();

如果您需要“安装唯一标识符”,此代码很有用,但不能用作设备唯一标识符,因为如果用户卸载并重新安装您的应用,返回的 UUID 将与上一个不同。

在我的例子中,我使用 UUID.nameUUIDFromBytes 通过给定的“名称”生成 UUID,并且我使用 Settings.Secure.ANDROID_ID 作为 UUID 的“名称”。使用此方法,您“同意”返回的 UUID 将相同,除非用户进行出厂重置。

代码如下:

   String androidId = Settings.Secure.getString(context.getContentResolver(),
Settings.Secure.ANDROID_ID);

UUID androidId_UUID = UUID
.nameUUIDFromBytes(androidId.getBytes("utf8"));

String unique_id = androidId_UUID.toString();

到这里为止,一切看起来都很好,但问题是:自从发布 Android 10 以来,谷歌不建议使用任何类型的“硬件标识符”,这包括 Settings.Secure.ANDROID_ID。这实际上是我的担忧,因为在我工作的公司中,我们使用 IMEI 或此 UUID 来识别我们的客户用户并定义用户是否试图登录多个设备,这是我们的规则不允许的,并建立一些静力学。如果同一设备的 UUID 不是唯一的,我们将不得不审查我们所有的用户访问控制。

这是关于唯一标识符良好实践的 Android 开发者链接。 https://developer.android.com/training/articles/user-data-ids

这里是同一个链接,但有一个 anchor ,谷歌在其中描述了一些用例和每个用例的唯一标识符的最佳选择。 https://developer.android.com/training/articles/user-data-ids#common-use-cases

没有一个用例适合我,所以我仍在寻找更好的解决方案。

我希望这可以帮助某人。

关于android - 如何在 Android 10 中获取有关手机 IMEI 的信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58180656/

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