android - Android getSerial() 未返回实际序列号或 IMEI
问题描述
我认为我已经完成了这项工作,但是来自 getSerial() 请求的数据不准确。
结果与我设备的“关于”部分中的任何内容都不匹配。
当我的最终用户致电我们的帮助台时,我需要这些信息来帮助他们 - 他们需要通过序列号来识别他们的设备
有没有办法将 getSerial() 转换为实际的序列号?
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
String serialNumber;
serialNumber = android.os.Build.getSerial();
有人知道如何获取实际信息吗?
解决方案
TelephonyManager tManager = (TelephonyManager)myActivity.getSystemService(Context.TELEPHONY_SERVICE);
String uid = tManager.getDeviceId();
getSystemService 是来自 Activity 类的方法。getDeviceID() 将根据手机使用的无线电(GSM 或 CDMA)返回设备的 MDN 或 MEID。
每个设备必须在此处返回一个唯一值(假设它是一部手机)。这应该适用于任何带有 sim 插槽或 CDMA 无线电的 Android 设备。您可以自己使用 Android 供电的微波炉 ;-)
推荐阅读
- c# - Write event log on remote machine using specific credentials
- gitlab - How to use Gitlab IDE's client side evaluation to live preview my Harp site?
- python - 将 Google App Engine 与 flask 和 flask-restplus 一起使用时出现 404 错误
- reactjs - ReactJS same components
- ios - Custom Transparent NavigationBar with back button
- java - 如何通过注释有条件地使用自定义 JsonSerializer
- twilio - 我的 Twilio 号码是否应该能够接收来自任何号码的短信(在我的国家/地区)?
- java - 为基于 Java 的 Web 应用程序创建许可证
- php - PhP 中的 Bot Telegram 问题(键盘和内联)
- java - 会话未得到维护