收藏
回答

企微小程序, 关闭企微位置权限后, 自动重进小程序, wx.getSetting() 无法正常工作

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug getSetting 微信安卓客户端 8.0.7.48 2.18.0
  onShow() {
    this.demo()
  },
  async demo() {
    console.log('index - onShow() - start')
    // wx.getSetting({
    //   withSubscriptions: true,
    //   success: res => {
    //     console.log('🚩 getSetting 成功:', res)
    //   }, 
    //   fail: err => {
    //     console.log('🚩 getSetting 失败:', err)
    //   },
    //   complete: res => {
    //     console.log('🚩 getSetting 完成:', res)
    //   }
    // })
    const a = await wx.getSetting()
    console.log('index - onShow() - end')
  }


复现步骤(企微安卓):

  • 手机企微位置权限: 允许
  • 打开企微小程序, log 正常: index - onShow() - start --> index - onShow() - end
  • 手机设置中关闭企微位置权限
  • 多任务切换回小程序, 会自动重新进入小程序
  • 此时, log 不正常: 只有 index - onShow() - start, 没有 index - onShow() - end. 即 await wx.getSetting() 后面的代码没有执行

自动进入小程序后, getSetting() 出现问题, 手动关闭再打开小程序即可恢复正常

微信小程序无此问题, 微信的位置权限被关闭后, 多任务切换回小程序后, 小程序会自动关闭, 用户重新打开小程序后, getSetting() 工作正常

企微小程序 iOS 也无此问题

使用回调形式, 表现为不走任何回调; 使用 await 形式, 变现为 '阻塞' 代码执行


回答关注问题邀请回答
收藏
登录 后发表内容