追梦随想
追梦随想
  • 发布:2019-07-16 21:11
  • 更新:2022-10-18 09:09
  • 阅读:5517

【报Bug】plus.device.uuid 和 imei 无效,imsi 貌似也不对!

分类:HTML5+

详细问题描述

下午升级新版本后,手机的HX基座也更新了,安装后发现无法获取设备id(uuid),然后使用官方推荐的 plus.device.getInfo,测试后发现 uuid 和 imei 无效,返回为空,imsi 说是设备上插入SIM的国际移动设备身份码,但实际上测试机根本没卡!!!反而有数据。。。不知道这数据哪里来的。

官方说的触发授权提示框,一直也没见弹出,用的华为手机,之前都是正常的,心塞...

另外,删除后自动安装基座,第一次打开会闪退。。。

软件版本:2.1.1.20190716

APP都不敢升级了啊

2019-07-16 21:11 负责人:无 分享
已邀请:
DCloud_App_Array

DCloud_App_Array

此问题已修复,请下载HBuilderX2.1.2-alpha。

  • 1***@qq.com

    你好 请问一下 我在h5+app中的某个页面引用了vue,怎么在APP中不执行函数

    2019-07-20 11:21

  • DCloud_App_Array

    回复 1***@qq.com: 5+APP项目中不支持使用vue,uni-app项目中才能使用vue。

    2019-07-20 16:04

  • 1***@qq.com

    回复 DCloud_App_Array: 好的 谢谢

    2019-07-22 08:36

  • 4***@qq.com

    Hbuilderx2.2.2.20190816在android6.0下获取的还是{"imei":"","imsi":[""],"uuid":""},这种机型里没有读取设备的应用权限,也没弹框出来。

    2019-09-18 14:33

DCloud_heavensoft

DCloud_heavensoft

我这里华为Android7正常。调用getInfo后手机端弹出授权询问框,点确认可以返回正确信息。
请提供你的详细信息

  • 1***@qq.com

    我这里是以前的荣耀6,现在用来做测试机。调用getInfo之后不弹出授权提醒,也获取不到uuid和IMEI

    2019-07-17 09:22

  • 追梦随想 (作者)

    我跟楼上的情况一样,荣耀6测试机,安卓系统是6.0,调用getInfo之后没有任何提示,也获取不到数据

    2019-07-17 09:56

1***@qq.com

1***@qq.com

我这里也出现这种问题了,一直获取不到uuid和IMEI。版本号2.1.1.20190716。

DCloud_Android_zl

DCloud_Android_zl

我这边暂时没有荣耀6的手机,测试几款华为6.0的手机均能正常获得imei,麻烦提供一下代码片段,看是否写法出现问题。

  • 追梦随想 (作者)

    plus.device.getInfo({

    success: function(event){

    console.log(JSON.stringify(event))

    },

    fail: function(error){

    mui.toast(error.code + ':' + error.message, {duration:'short', type:'div'});

    }

    });


    代码都是和官方文档一样的,唯一的区别就是安卓系统6.0的无法获取到,我另一个机子是魅族安卓7.0就没问题

    2019-07-17 14:26

  • DCloud_Android_zl

    回复 追梦随想: 使用基座运行的吗?

    2019-07-17 14:49

  • 追梦随想 (作者)

    回复 DCloud_Android_zl: 是的,另外魅族手机没有出现那个授权提示

    2019-07-17 14:56

  • DCloud_Android_zl

    回复 追梦随想: 部分手机读取imei不会弹窗是正常的,有些厂商不认为读取imei是敏感权限。华为手机无法得到imei有什么反应吗,比如js报错或者触发失败回调之类的。

    2019-07-17 15:02

  • 追梦随想 (作者)

    回复 DCloud_Android_zl: 没有错误提示,就是返回空,{"imei": "", "imsi": "123456789", "uuid": ""} 这样子

    2019-07-17 15:23

  • 1***@qq.com

    回复 DCloud_Android_zl: 我这里返回的是success但是IMEI和uuid字段是空。代码也是用的文档上的。而且没更新之前是可以获取到的。更新之后就获取不到了

    2019-07-17 15:25

  • 1***@qq.com

    回复 DCloud_Android_zl: 我这里现在还有一个问题就是addEventListener方法不执行

    2019-07-17 15:30

  • DCloud_Android_zl

    回复 追梦随想: 麻烦提供一下QQ号,解决一下这个问题。

    2019-07-17 16:13

  • 追梦随想 (作者)

    回复 DCloud_Android_zl: 1397770929

    2019-07-17 16:16

DCloud_Android_zl

DCloud_Android_zl

问题已确认,将会在下版进行修复。

  • 1***@qq.com

    谢谢

    2019-07-17 18:16

  • 2***@qq.com

    你好,我已经下载了最新版本,问题还是没有修复,我在魅族手机上测试,结果还是不弹出询问用户是否获取设备码的权限,我换成以前已经打包好的App就可以询问,是不是你们的在线打包出了问题

    2019-07-18 20:18

  • DCloud_Android_zl

    回复 2***@qq.com: 现在通过plus.device.getInfo获取imei,需要手动调用此接口。

    2019-07-19 12:56

  • 2***@qq.com

    回复 DCloud_Android_zl: 我是说不弹出询问框问题,我以前用hbuilder x打包的app可以正常弹出询问框,这次打包的在小米和魅族手机上不弹出询问框,其他权限获取的询问框正常弹出,就手机设备识别码询问框不会弹出,该权限的状态也是询问状态的,导致imei无法获取

    2019-07-19 13:46

  • DCloud_Android_zl

    回复 2***@qq.com: 对获取imei的权限申请做了修改,取消了应用一启动的权限申请,改成了调用plus.device.getinfo申请权限并获取imei。

    2019-07-19 14:48

  • 2***@qq.com

    回复 DCloud_Android_zl: 那您们改了这些接口不应该也官方文档上面也修改一下吗,不然又会有开发者误认为这是bug

    2019-07-19 16:25

  • 2***@qq.com

    回复 DCloud_Android_zl: 你好,我这里使用你说的那个plus.device.getinfo并未弹出询问窗口,我用的是魅族手机,获取到的是undefined

    2019-07-19 19:52

2***@qq.com

2***@qq.com

希望早点修复,还等着打包更新,我用的也是魅族安卓7.0机子。在线打包安装后不弹出询问用户是否允许获取设备识别码权限,我换成以前打包的App就会弹出,确定不是手机问题

j***@qq.com

j***@qq.com - ERP软件厂商

安卓4.4.2在2.1.3下,安全设置:未勾选应用权限,imei,imsi,uuid都返回空串
getDeviceInfo success: {"imei":"","imsi":[""],"uuid":""}
希望迟早解决

  • DCloud_Android_zl

    4.4.2返回空字符串的问题将在下版解决。

    2019-07-30 12:18

2***@qq.com

2***@qq.com - 茫茫代码中的一粒沙

这不需要代码片段了吧?你们自己官方的DEMO自己都获取不出来?提示我更新很多天了我一直没更新 然后要不就是UUID获取成了IMEI 要不就是IMEI获取成了UUID 没有准确的时候 今天一更新 完了凉凉了.....

  • DCloud_Android_zl

    现在不推荐使用plus.device.imei等api,HBuilderX2.0.0以后版本使用plus.device.getInfo。

    2019-07-30 12:19

萌龙

萌龙

我的机顶盒也获取不到了

  • 2***@qq.com

    关键挺好玩的 怎么就不明不白的解决了呢 ......

    2019-07-29 15:10

  • 萌龙

    回复 2***@qq.com: 你的解决了?我的还是不行

    2019-07-29 15:22

  • 2***@qq.com

    回复 萌龙: 没用他说那个plus.device.getInfo({

    success: function(e) {

    console.log('getDeviceInfo success: ' + JSON.stringify(e));


                                },  
    fail: function(e) {
    console.log('getDeviceInfo failed: ' + JSON.stringify(e));
    }
    });

    第一次获取不到 第二次能获取到 但是UUID 变成了IMEI

    2019-07-29 15:26

2***@qq.com

2***@qq.com - 茫茫代码中的一粒沙

第一次进去返回空 第二次进去就是 UUID和IMEI一样 请问怎么就解决了.....

  • DCloud_Android_zl

    麻烦提供一下设备名称以及安卓版本号。

    2019-07-30 12:21

skysowe

skysowe

我也碰到同样问题了,用了
plus.device.uuid
plus.device.getInfo
两种方式都获取不到设备id,开发模式下是可以的,打包之后就获取不到,是否需要开启
CALL_PHONE权限???

设备型号是小米9,安卓9,,安卓8的设备是工作正常的!

  • skysowe

    17:23:17.552 1============================== at index.html:383

    17:23:17.573 {"imei":"","imsi":[""],"model":"MI 9 Transparent Edition","vendor":"Xiaomi","uuid":""} at index.html:384

    17:23:17.592 1============================== at index.html:396


    17:23:17.673 2============================== at index.html:421

    17:23:17.693 getDeviceInfo failed: {"imei":"","imsi":[],"uuid":""} at index.html:422

    17:23:17.712 2============================== at index.html:423

    2019-08-01 17:27

  • skysowe

    给了CALL_PHONE权限,也取不到设备id,也没有任何弹窗提示,手动去授权管理里给允许拨打电话开放了权限,也取不到设备id

    2019-08-01 17:35

  • DCloud_Android_zl

    回复 skysowe: read_phone_state权限,加上这个权限试试。

    2019-08-01 20:11

  • 萌龙

    回复 DCloud_Android_zl: 加了也获取不到

    2019-08-02 09:12

  • skysowe

    回复 DCloud_Android_zl: 我刚试了下,加了read_phone_state之后,在app权限里,手动开启相关的权限,就能获取到机器码了!!!回复帖不能发图,我发在单独的评论里。

    2019-08-02 10:06

skysowe

skysowe

加了read_phone_state之后,在app权限里,手动开启相关的权限,就能获取到机器码了,但是启动的时候,没有弹出获取权限的提示框!访问相机和照片的权限是有提示框出来的!!!

  • 萌龙

    plus.device.uuid

    plus.device.getInfo

    用的哪个

    2019-08-02 10:26

  • skysowe

    回复 萌龙: 我在程序是先用plus.device.uuid,如果获取为空就plus.device.getInfo,运行下来发现,第一个就获取到了

    2019-08-02 10:28

skysowe

skysowe

但是怎么才能让这个权限,像其他权限一样自动跳出来呢?需要在manifest.json里配置些什么吗?

  • DCloud_Android_zl

    manifest.xml中的app模块权限配置区域,勾选之前我说的权限就可以了

    2019-08-02 12:21

  • DCloud_Android_zl

    plus.device.getInfo 建议用这个接口去获取imei,plus.device.uuid已过时且将被废弃。

    2019-08-02 12:22

  • 5***@qq.com

    回复 DCloud_Android_zl: 老哥,我这边第一次打开还是没有弹出授权提示框,并且进了fail事件,安卓8.0.0。hbuilderX2.2.0版本,昨天更新的。第二次打开就是正常的,定位权限也是,我也勾选了read_phone_state

    2019-08-13 15:22

兔兔Z

兔兔Z

安卓手机安装了自定义基座,安装时允许获取手机号信息的权限,但是给了权限之后进入页面uuid是空的,第二次进入就能获取到是为什么

该问题目前已经被锁定, 无法添加新回复