How To Uniquely Identify An Android Device?
我正在开发一个允许用户从多个Android设备登录的应用程序(服务器Android客户端)。当用户登录设备时,该设备将在服务器端注册,但我不知道如何避免重复,所以我想知道是否有机会唯一标识一个Android设备?我认为Google Play和Facebook可以做到这一点。
有几种选择可供选择,但没有100%的保证它们总是有效的。请参阅Android开发者博客帖子:http://android-developers.blogspot.in/2011/03/identifying-app-installations.html
提到的最佳方法是settings.secure.androidu id
您可以检查设备的IMEI或MAC地址。
对于IMEI。
TelephoneManager.GetDeviceID将工作
为MAC
wifiinfo.getmacaddress将起作用
- 是的,但如何通过adb shell获取WiFi地址?
- @斯廷皮克我用的是IMEI。如果用户使用这个app play.google.com/store/apps/…,那么我们将得到错误的IMEI。
- 只是从android官方网站:It is generally not recommended to use MAC address for any form of user identification. As a result, as of Android M, local device MAC addresses (for example, Wifi and Bluetooth) are not available via third party APIs. The WifiInfo.getMacAddress() method and the BluetoothAdapter.getDefaultAdapter().getAddress() method will both return 02:00:00:00:00:00上取下的一张便条。
- 可以通过networkInterface.getNetworkInterfaces()或devicePolicyManager获取MAC地址。
- 那些不再适用于Android Q:(