更新记录

1.0.0(2024-02-28)

android14设备支持


平台兼容性

Android Android CPU类型 iOS
适用版本区间:5.0 - 14.0 armeabi-v7a:支持,arm64-v8a:支持,x86:未测试 ×

原生插件通用使用流程:

  1. 购买插件,选择该插件绑定的项目。
  2. 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
  3. 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
  4. 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
  5. 开发完毕后正式云打包

付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios

注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择


HL_DeviceID

获取设备唯一ID、设备唯一标识。支持获取OAID、AndroidID、IMEI等。

说明

  1. 稳定性高、集成简单、长期维护
  2. 购买后其他文件需求,通用的免费开发

设备唯一标识说明:

1、IMEI(International Mobile Equipment Identity):

  • 定义:IMEI 是国际移动设备身份码,用于唯一标识 GSM 和 UMTS 移动电话设备。
  • 限制:android10以前需要权限才能获取到,android10以后基本无法获取到
  • 如何查看:一般在系统的关于手机信息页面可以查看到IMEI号

2、OAID(Android Advertising ID):

  • 定义:OAID 是 Android 系统提供的用于广告追踪的匿名标识符。
  • 说明:大多国内手机都能正常获取到,老设备、国外设备可能无法正常获取
  • 如何查看:华为设备在系统设置-隐私安全- 跟踪管理里可以查询到OAID。

3、Android ID:

  • 定义:Android ID 是 Android 设备的唯一标识符,用于标识设备。
  • 说明:
    1. 基本设备都能正常获取到,少部分设备无法获取。
    2. 每个应用获取的AndroidID都不一致。
    3. 单个应用卸载重装后AndroidID不变
  • 如何查看:系统无法查询到

4、UUID(Universally Unique Identifier):

  • 定义:含义:随机生成的设备ID
  • 说明:卸载重装后UUID会发生变化
  • 如何查看:系统无法查询到

5、ClientID:

  • 定义:结合以上的设备标识,返回的ClientID确保不会为空
  • 说明:获取优先级如下
    • 1、IMEI或MEID
    • 2、OAID
    • 3、AndroidID
    • 4、UUID
  • 如何查看:如返回的设备标识是IMEI或OAID可以在系统中查看到

扫码下载体验Demo

二维码更新时间:2024年02月25日

扫码下载体验Demo

插件api


1. 使用插件

var HL_DeviceID = uni.requireNativePlugin("HL-DeviceID");

1. 插件方法使用说明

API说明
方法名称 参数 返回参数 说明
register 回调方法 异步方法
初始化插件,未初始化无法获取部分设备标识符
PS:初始化插件要注意APP合规性,若最终用户未同意隐私政策则不要调用
isSupportOAID boolen 同步方法
判断是否支持获取OAID
getOAID string 同步方法
获取OAID
getOAIDAsyn 回调方法 异步获取OAID
getAndroidID string 同步方法
获取AndroidID
getClientID string 同步方法
获取ClientID
getClientIDJson 回调方法 异步获取ClientID
回调参数
参数 说明
code 回调状态码,0:成功、其他:失败
msg 回调状态说明
id 回调标识符id
idmd5 回调标识符id的MD5值
idtype 回调标识符的类型说明。取值:IMEI/MEID、OAID、AndroidID、UUID
代码示例

< script >
    // 获取 module 
    var HL_OfdReader = uni.requireNativePlugin("HL-OFDReader");

    //初始化插件
register() {
    HL_DeviceID.register(result => {
        this.data.showMsg = "初始化插件:" + JSON.stringify(result);
        // modal.toast({
        //  message: "初始化插件",
        //  duration: 1.5
        // });
    })
},

//判断是否支持获取设备ID
isSupportOAID() {
    const result = HL_DeviceID.isSupportOAID()
    this.data.showMsg = "是否支持获取OAID:" + result;
    // modal.toast({
    //  message: JSON.stringify(result),
    //  duration: 1.5
    // });
},

//判断是否支持获取设备ID
getOAID() {
    const result = HL_DeviceID.getOAID()
    this.data.showMsg = "OAID:" + result;
    // modal.toast({
    //  message: (JSON.stringify(result)),
    //  duration: 1.5
    // });
},

//异步获取OAID
getOAIDAsyn() {
    HL_DeviceID.getOAIDAsyn(result => {
        this.data.showMsg = "异步获取OAID:" + JSON.stringify(result);
        // modal.toast({
        //  message: (JSON.stringify(result)),
        //  duration: 1.5
        // });
    })
},

//获取androidID
getAndroidID() {
    const result = HL_DeviceID.getAndroidID();
    this.data.showMsg = "androidID:" + result;
    // modal.toast({
    //  message: (JSON.stringify(result)),
    //  duration: 1.5
    // });
},

//获取设备
//ps:获取优先级 
//1、IMEI或MEID:
//2、OAID:
//3、AndroidID:
//4、GUID或UUID:随机生成的ID,卸载重装后ID会变化
getClientID() {
    const result = HL_DeviceID.getClientID();
    this.data.showMsg = "clientID:" + result;
    // modal.toast({
    //  message: (JSON.stringify(result)),
    //  duration: 1.5
    // });
},

//获取设备id详细信息
//ps:获取优先级 
//1、IMEI或MEID:
//2、OAID:
//3、AndroidID:
//4、GUID或UUID:随机生成的ID,卸载重装后ID会变化
getClientIDJson() {
    const result = HL_DeviceID.getClientIDJson();
    this.data.showMsg = "clientIDJson:" + JSON.stringify(result);
    // modal.toast({
    //  message: (JSON.stringify(result)),
    //  duration: 1.5
    // });
}
< /script>

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问