getConnectionInfo().getMacAddress() 用作唯一设备标识符时是否存在已知错误或问题?
其中一种选择,Android ID,似乎在某些平板电脑上不可用(或不是真正唯一的)。失败...
我知道的唯一问题是它只有在启用 Wi-Fi 时才可用。
我认为这是一个大问题,因为一些智能手机用户可能永远不会打开 Wi-Fi。您的应用可以自行开启 Wi-Fi,但这意味着您的应用需要额外的权限“android.permission.CHANGE_WIFI_STATE”。
您的一般问题 - 如何唯一识别设备 - 已被广泛讨论,例如
http://android-developers.blogspot.ca/2011/03/identifying-app-installations.html
在去年 Google I/O 的这段视频中,Reto Meier 准确地谈到了正确识别设备的问题。
对于解决方案,您将不得不观看视频,因为我不记得了。但我确实记得他对“MacAddress”解决方案的担忧。这个解决方案的问题在于它解决了特定的设备而不是特定的“安装”,想想当安装了您的应用程序的用户将他的手机出售给另一个也将安装您的应用程序的人时的问题。使用 MacAddress,您将无法区分这两者...