当前位置: 首页 > article >正文

华为HarmonyOS灵活高效的消息推送服务(Push Kit) - 3 获取AAID

AAID(Anonymous Application Identifier):应用匿名标识符,标识运行在移动智能终端设备上的应用实例,只有该应用实例才能访问该标识符,它只存在于应用的安装期,总长度32位。与无法重置的设备级硬件ID相比,AAID具有更好的隐私权属性。

AAID具有以下特性:

  • 匿名化、无隐私风险:AAID和已有的任何标识符都不关联,并且每个应用只能访问自己的AAID。
  • 同一个设备上,同一个开发者的多个应用,AAID取值不同。
  • 同一个设备上,不同开发者的应用,AAID取值不同。
  • 不同设备上,同一个开发者的应用,AAID取值不同。
  • 不同设备上,不同开发者的应用,AAID取值不同。

场景介绍

AAID会在包括但不限于下述场景中发生变化:

  • 应用卸载重装。
  • 应用调用删除AAID接口。
  • 用户恢复出厂设置。
  • 用户清除应用数据。

接口说明

接口返回值有两种返回形式:Callback和Promise回调。下表中仅展示Promise回调形式的接口,Promise和Callback只是返回值方式不一样,功能相同。

接口名

描述

getAAID(): Promise<string>

获取AAID,使用Promise异步返回结果。

deleteAAID(): Promise<void>

删除AAID,使用Promise异步返回结果。

获取AAID

  1. 导入AAID模块。
    import { AAID } from '@kit.PushKit';

  2. 调用AAID.getAAID()方法获取AAID信息。
    import { AbilityConstant, UIAbility, Want } from '@kit.AbilityKit';
    import { AAID } from '@kit.PushKit';
    import { BusinessError } from '@kit.BasicServicesKit';
    import { hilog } from '@kit.PerformanceAnalysisKit';
    export default class EntryAbility extends UIAbility {
    // 入参want与launchParam并未使用,为初始化项目时自带参数
    async onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): Promise<void> {
    // 获取AAID
    try {
    const aaid: string = await AAID.getAAID();
    hilog.info(0x0000, 'testTag', 'Succeeded in getting AAID.');
    } catch (err) {
    let e: BusinessError = err as BusinessError;
    hilog.error(0x0000, 'testTag', 'Failed to get AAID: %{public}d %{public}s', e.code, e.message);
    }
    }
    }


http://www.kler.cn/a/319639.html

相关文章:

  • LeetCode【0031】下一个排列
  • 机器学习day3-KNN算法、模型调优与选择
  • 算法——二分查找(leetcode704)
  • 使用CubeMX一键配置Freertos
  • 【AI换装整合包及教程】CatVTON与其他虚拟试衣技术的详细对比
  • Oracle OCP认证考试考点详解082系列16
  • Python内置的re库
  • Android平台Unity3D下如何同时播放多路RTMP|RTSP流?
  • 什么是电商云手机?可以用来干什么?
  • 内容生态短缺,Rokid AR眼镜面临市场淘汰赛
  • 影刀RPA实战:网页爬虫之天猫商品数据
  • 在 Windows 上安装和配置 NVIDIA 驱动程序、CUDA、cuDNN 和 TensorRT
  • Vue2学习笔记(02条件渲染 、监视数据的原理)
  • JS面试真题 part6
  • 【C++】模拟实现list
  • WPF DataGrid 动态修改某一个单元格的样式
  • MyBatis 缓存机制
  • 【AI写作】解释区块链技术的应用场景和优势
  • select 函数简介
  • CentOS Linux教程(6)--CentOS目录
  • CSS的字体属性
  • 软件测试面试题(6)——二面(游戏测试)
  • 2024年_ChatGPT 及类似的人工智能技术带来的影响与改变 怎样利用 ChatGPT 提高学习效率
  • 在SpringBoot项目中利用Redission实现布隆过滤器(布隆过滤器的应用场景、布隆过滤器误判的情况、与位图相关的操作)
  • MICS:PythonJail沙箱逃逸(持续更新中)
  • Python数据分析与可视化:从基础到高级应用