更新记录

1.0.6(2023-07-03) 下载此版本

  1. 修复 mac 地址获取的问题,优先使用新增的 macAddress 字段
  2. 增加安卓版本号的返回 version

1.0.5(2023-06-29) 下载此版本

  1. 增加 versionInt (AndroidVersionInt) , versionCode (AndroidVersionCode) 字段
  2. 修复获取 SN 的兼容问题
  3. 完善 README

1.0.4(2022-02-14) 下载此版本

package.json 的 minSdkVersion 改为19

查看更多

平台兼容性

Android Android CPU类型 iOS
适用版本区间:4.4 - 12.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原生插件配置”->”云端插件“列表中删除该插件重新选择


mt-device-info

介绍

  1. 获取安卓设备信息,包括:Mac, imei, sn, id, androidId, system_model, 系统版本 等

  2. 重启设备

  3. 有其他需求或者 bug 欢迎在评论留言

使用说明

  1. 一些值需要先申请 READ_PHONE_STATE 权限才能获取到,本插件不做申请处理。

  2. SN 在安卓 P (Level 28) 以上,普通应用无法获取,可能会返回空字符或者 UnKnown ,参考: https://source.android.com/docs/core/connect/device-identifiers?hl=zh-cn

  3. IMEISN,且在安卓 L (Level 21) 下无法获取。

  4. 优先使用返回的 macAddress (wifiMac 多人反馈有问题)

使用文档

引入

复制代码// #ifdef APP-PLUS
const deviceUtil = uni.requireNativePlugin("mt-device-info");
// #endif

获取基础信息

复制代码deviceUtil.getDeviceInfoStr((deviceInfo) => {
  console.log(deviceInfo);
});

重启 app (uni.runtime.restart() 不满足需求的情况下)

复制代码deviceUtil.restartApp(); // 重启不杀进程
deviceUtil.restartAppAndKillProcess(); // 杀进程后再重启
deviceUtil.restartAppWithService();
deviceUtil.restartAppWithAlarmManager();

隐私、权限声明

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

android.permission.READ_PHONE_STATE

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

插件不采集任何数据

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

许可协议

请参考开源项目地址的开源协议
157***@139.com

2024-09-24

mac和设备的不一样

余乐波报

2024-06-28

androidID不能作为手机唯一码

我秦始皇打钱

2024-01-26

macAddress是02:00:00:00:00:00 先用androidID字段试试

sun***@163.com

2024-01-19

获取不到iMEI是什么原因呢

244***@qq.com

2023-12-19

真机运行上,获取到的mac地址一直都是"macAddress": "02:00:00:00:00:00", 很急

154***@qq.com

2023-10-09

大佬,这个返回data中的id是什么啊?我用两个app测试同一个手机获取的id是相同的,是否可以当做这部手机的唯一码

869***@qq.com 2023-10-09

data.id 来自安卓接口的的 Build.ID,不能当唯一码,现在唯一码越来越麻烦了(特别是高版本的安卓有一些限制),androidID ,IMEI, macAddress(有些系统都随机了) 也只能当参考。

可以搜下 OAID,但可能也不全不支持。

zcx***@163.com

2023-09-13

{"androidID":"bd85ad0e8dac7c1a","id":"TP1A.220624.014","macAddress":"","sm":"V2243A","sn":"","version":"13","versionCode":"REL","versionInt":33,"wifiMac":"02:00:00:00:00:02"} 这个macAddress是空呢 mac地址也不对呀 怎么回事呢

223***@qq.com

2023-08-22

为什么我的在H5显示未执行,在真机调试的时候提示当前运行的基座不包含原生插件[mt-device-info],请在manifest中配置该插件,重新制作包括该原生插件的自定义运行基座,但是我已经打包过了

qun***@163.com

2023-08-11

TypeError: Cannot read property 'getDeviceInfoStr' of undefined 11:51:47.666 reportJSException >>>> exception function:WEEX_CALL_JAVASCRIPT, exception:JavaScript execute error!Uncaught TypeError: Cannot read property 'getDeviceInfoStr' of undefined at eval (:79:16)

869***@qq.com 2023-08-11

应该是没引入成功(估计 deviceUtil 是 undefined),比如没有重新打基座,不在 uni 环境 之类的

接修复及原生单

2023-06-29

mac地址少一位,就我发现了嘛?

869***@qq.com 2023-06-29

已经重新提交 1.0.6 ,等明天审核过再试试,新增字段 macAddress

接修复及原生单 2023-06-29

谢谢兄弟!急需!收下我的一瓶可乐

2023-06-29

【 mt-device-info - 8***@qq.com 】mac获取少一位 而且部分设备获取不到mac 例如安卓低版本的6 7 8 9 等 只能先用安卓id。 希望官方也给一个可行方案出来

2023-01-30

获取不到SN,结果为unknown,wifiMac缺失最后一位

2022-11-26

{"androidID":"5927850902944e09","id":"PPR1.190810.011","sm":"SM-G973N","sn":&quo...