安全的Android ID长度?

问题描述 投票:2回答:1

我使用下面的代码来获取Android ID

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

我能够获得Android ID,但它的长度不固定。在某些手机中,我获得了16个身高ID,而在另一部手机中,我获得了15个身高ID。

我在文档中读到它是一个64十六进制十进制数,所以它应该总是返回16位数字符串。

所以我有什么不对劲吗?

android udid
1个回答
8
投票

以下code snippet from AOSP显示了如何生成ANDROID_ID:

SecureRandom random = new SecureRandom();
String newAndroidIdValue = Long.toHexString(random.nextLong());

已知方法Long.toHexString抑制前导零。因此,如果长度小于16,则在ANDROID_ID前加零,应该是纠正获得完整16位ANDROID_ID的方法。

© www.soinside.com 2019 - 2024. All rights reserved.