HarmonyOS 鸿蒙Next 不能通过APP内的代码获取到设备的UDID,但是可以获取到AAID。实测当用户主动卸载APP后重新安装时,AAID值会改变。

发布于 1周前 作者 nodeper 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 不能通过APP内的代码获取到设备的UDID,但是可以获取到AAID。实测当用户主动卸载APP后重新安装时,AAID值会改变。

打印

cke_256.png

文档

https://developer.huawei.com/consumer/cn/doc/harmonyos-references/push-aaid-0000001775689553#section2628194911411

代码

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%’) } }

4 回复
还是不如生成一个id存文档,卸载不会丢

目前我也是这么做的

针对您提出的HarmonyOS 鸿蒙Next API 11学习中关于设备标识符的问题,以下是专业解答:

在HarmonyOS 鸿蒙Next中,UDID作为设备的唯一标识符,其访问权限仅限于系统应用,第三方应用无法直接获取。而AAID虽然可以通过应用内代码获取,但它在用户主动卸载APP后重新安装时会发生变化,因此不具备持久性。

对于第三方应用而言,由于隐私保护政策,无法直接获取一个固定不变且唯一的硬件设备标识符。如果确实需要跟踪设备(如进行设备激活数统计或风险控制),建议考虑使用OAuth、OpenID等用户授权机制,或利用HarmonyOS的分布式系统能力进行设备间的识别和交互。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部