收藏
回答

getUserProfile 在开发工具连续N次试验结果?与文档描述相差太大了

win7专业版

开发工具版本1.05.2103190

基础库 2.15.0

wx.canIUse("getUserProfile")返回永远是false

当wx.authorize()返回"scope.userInfo":true时

wx.getUserProfile()偶尔与文档描述一至,弹出问询窗口

大部分时间返回 fail:can only be invoked by user TAP gesture.只能由用户点击手势调用。

过一会再点,又正常。注意can only be invoked by user TAP gesture后面那个.大部分时间有,偶尔没有

当wx.authorize()返回"scope.userInfo":false时

偶尔返回desc length does not meet the requirements

专门去数了一下desc ,27个

大部分还是can only be invoked by user TAP gesture

但是,当 使用我的用户信息 的开关切换过(无论切为开还是关),再调用wx.getUserProfile()大部分时间都能正确调用,弹出问询窗口。

无论你选择的是拒绝或允许。反正是不能接连点,否则can only be invoked by user TAP gesture

我TM哪里用错了????




回答关注问题邀请回答
收藏

8 个回答

  • 欢乐马
    欢乐马
    2021-05-28

    这里分享下:fail:can only be invoked by user TAP gesture 的问题。

    虽然是在tap 点击事件里,但是因为你在调用这个出问题的api之前,调用过其他回调类函数(或者你promisify过),就造成后面这个api调用满足不了在tap gesture里这个条件了。

    具体怎么解决,只能改产品逻辑。。。。

    2021-05-28
    有用 1
    回复
  • 柒⃰色⃰吖⃰
    柒⃰色⃰吖⃰
    2021-03-25

    老兄,我发现问题所在了!!不能通过异步去调,这个接口,必需直接在点击事件里

    2021-03-25
    有用 1
    回复 3
    • 大尾巴狼
      大尾巴狼
      发表于移动端
      2021-03-25
      不一定
      2021-03-25
      回复
    • now
      now
      2021-04-19
      +1
      2021-04-19
      回复
    • 阿白
      阿白
      2021-04-22
      之前尝试过,确实,若在触发之前有调用其他接口直接出现问题,若是到其他地方回调回来结果,就会偶尔出现
      2021-04-22
      回复
  • Cjiang
    Cjiang
    2021-03-25

    你好,使用button去调用试下wx.getUserProfile,试试看?

    2021-03-25
    有用
    回复 1
    • 困
      2021-11-04
      你好,现在又出现这个问题了。明明再button点击事件回调方法中,但是却提示错误信息:getUserProfile:fail can only be invoked by user TAP gesture
      2021-11-04
      回复
  • 耿霄
    耿霄
    2021-03-25

    关于问题1,基础库的日志显示v2.16.0 (2021-03-03)才支持

    问题2:wx.getUserProfile(),文档里写了,只能通过用户点击才能触发,具体看真机,别看开发工具

    问题3:想让小伙伴帮你解决问题,代码片段还是必不可少的(能降低大家沟通和理解的时间成本,另外能帮你快速解决问题)


    2021-03-25
    有用
    回复 3
  • 有棱角的胖子
    有棱角的胖子
    2021-03-25

    打那么多字真不如上代码快一点,desc是不超过30个字符(一个中文等于两个字符),这个代码片段你试一下会不会有你上面的问题https://developers.weixin.qq.com/s/mBMgD3mZ78pc

    2021-03-25
    有用
    回复
  • Why not?
    Why not?
    2021-03-25

    有点魔幻。文档里可一点没提需要点击才能调用。

    2021-03-25
    有用
    回复
  • 维她命系
    维她命系
    发表于小程序端
    2021-03-24

    开发者工具清理所有缓存试试

    2021-03-24
    有用
    回复 4
    • 大尾巴狼
      大尾巴狼
      2021-03-25
      试过了,清理编译缓存,全部清除都试过。没用,感觉有点用的,还是将desc的长度控制15个字符以下。能正确调用api的几率要大些。
      2021-03-25
      回复
    • 维她命系
      维她命系
      2021-03-25回复大尾巴狼
      desc在开发者工具和真机上都没有看到显示的地方,填写了有什么用途?
      2021-03-25
      回复
    • 有棱角的胖子
      有棱角的胖子
      2021-03-25回复维她命系
      desc后续会显示在弹框上,所以还是不要乱填比较好
      2021-03-25
      1
      回复
    • 大尾巴狼
      大尾巴狼
      发表于移动端
      2021-03-25回复维她命系
      14号才会
      2021-03-25
      1
      回复
  • 大尾巴狼
    大尾巴狼
    2021-03-24

    别让我上代码,烦不得

    2021-03-24
    有用
    回复
登录 后发表内容
问题标签