How to identify an Android device programmatically?
本问题已经有最佳答案,请猛点这里访问。
目前,我正在使用mac地址作为Android设备的标识符。
1 2 3 | WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo wInfo = wifiManager.getConnectionInfo(); String mac = wInfo.getMacAddress(); |
但是,我发现对于某些用户的设备,
如果你能找出原因,那是最好的!
否则,你能提供一个识别Android设备的替代方案吗?
您可以在
1 2 | TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); telephonyManager.getDeviceId(); |
将权限添加到androidmanifest.xml中:
1 | <uses-permission android:name="android.permission.READ_PHONE_STATE"/> |
在Emulator中,您可能会得到一个类似于0000的…价值。在设备上检查以获取设备ID。
找到Android设备的独特之处,你最好的选择是访问它的序列号。关于如何做到这一点,还有其他几篇文章,但最受关注的是:
如何找到安卓设备的序列号?