我们开发了一款需要唯一识别每台设备的应用。我们首先考虑使用IMEI,然后使用TelefonyManager的getDeviceId()方法获取它。
但有一位用户报告该应用无法运行,而且似乎我们无法获得IMEI。我读到here,有些Nexus 7没有IMEI,他们使用另一种方式获取序列号:CSSN。我怎样才能获得它?或者,更好的是,有一种唯一的方法可以唯一地识别每个Android设备吗?
PS:我们确实有一个Nexus 7用于测试,它运行良好,这就是为什么在我说一些 Nexus 7之前。答案 0 :(得分:2)
建议识别每个安装而不是每个设备。确实有几种识别设备的方法,例如,Mac地址,IMEI,序列号,ANDROID_ID,但是,由于不同的OS版本,设备和供应商实现,这些都不是真正可靠的。检查this。
答案 1 :(得分:1)
尝试使用以下代码获取设备序列号:
Log.i("TAG","android.os.Build.SERIAL: " + Build.SERIAL);
您可以浏览Android Documentation。