HarmonyOS 鸿蒙Next 不能通过APP内的代码获取到设备的UDID,但是可以获取到AAID。实测当用户主动卸载APP后重新安装时,AAID值会改变。
HarmonyOS 鸿蒙Next 不能通过APP内的代码获取到设备的UDID,但是可以获取到AAID。实测当用户主动卸载APP后重新安装时,AAID值会改变。
打印
文档
代码
import { AAID } from ‘@kit.PushKit’;
import { hilog } from ‘@kit.PerformanceAnalysisKit’;
import { BusinessError } from ‘@kit.BasicServicesKit’;
@Entry
@Component
struct Page30 {
build() {
Column() {
Button(‘获取设备的AAID’).onClick(() => {
AAID.getAAID().then((data: string) => {
hilog.info(0x0000, ‘testTag’, ‘Get AAID successfully: %{public}s’, data);
}).catch((err: BusinessError) => {
hilog.error(0x0000, ‘testTag’, ‘Get AAID failed: %{public}d %{public}s’, err.code, err.message);
});
})
}
.height(‘100%’)
.width(‘100%’)
}
}
有道理👍
目前我也是这么做的
针对您提出的HarmonyOS 鸿蒙Next API 11学习中关于设备标识符的问题,以下是专业解答:
在HarmonyOS 鸿蒙Next中,UDID作为设备的唯一标识符,其访问权限仅限于系统应用,第三方应用无法直接获取。而AAID虽然可以通过应用内代码获取,但它在用户主动卸载APP后重新安装时会发生变化,因此不具备持久性。
对于第三方应用而言,由于隐私保护政策,无法直接获取一个固定不变且唯一的硬件设备标识符。如果确实需要跟踪设备(如进行设备激活数统计或风险控制),建议考虑使用OAuth、OpenID等用户授权机制,或利用HarmonyOS的分布式系统能力进行设备间的识别和交互。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html。