如何解决如何像其他 Cordova 应用程序一样使用 Java 获取 android 的 uuid?
我正在检查一个 Cordova 应用程序,它使 API 调用成为一个免费的开放式 REST API。在其中一个 POST 请求中,它以 JSON 对象的形式发送设备 ID。 Cordova 应用程序中的设备 ID 是通过以下方式获得的:
this.device.uuid;
我计划使用 Java 构建相同的应用程序,因此需要访问该设备 ID 以进行 API 调用。我尝试使用以下代码执行相同操作。
TelephonyManager tManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
String uuid = tManager.getDeviceId();
但我意识到我需要访问 Manifest 文件中的 READ_PRIVILEGED_PHONE_STATE 但这只能通过系统应用程序而不是第三方应用程序访问。那么这个 Cordova 应用程序是如何访问它的?
附言- Cordova 应用程序的 this.device.uuid;
可能不会返回我的想法。因此,我将只向您展示我手机的设备 ID,您可以通过它了解这是什么以及如何使用 Java 在 Android 中访问它。
Cordova 应用程序获取的设备 ID - 29904bc142b60dce(不变)
解决方法
我上面提到的代码现已弃用。使用以下代码:
String device_id = Settings.Secure.getString(this.getContentResolver(),Settings.Secure.ANDROID_ID);
此外,在 Android M 之后;每个其他应用程序都有不同的设备 ID。这是我无法弄清楚的,并且正在打我的头。与我与之比较的应用程序相比,我开发的应用程序具有其他一些设备 ID。因此,不要期望同一设备中的两个不同应用具有相同的设备 ID。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。