1***@qq.com
1***@qq.com
  • 发布:2022-05-18 14:51
  • 更新:2022-06-28 16:11
  • 阅读:1014

【报Bug】 uni.getRecorderManager()录音在ios下关于权限的问题

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Win10

HBuilderX类型: 正式

HBuilderX版本号: 3.4.7

手机系统: iOS

手机系统版本号: iOS 15

手机厂商: 苹果

手机机型: iphone xr

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:
this.recorderManager = uni.getRecorderManager();   //获取录音管理器  
this.recorderManager.start();  //开始录音  (第一次苹果会申请权限,省去权限判断代码)  
this.recorderManager.onStart(()=>{     //苹果未点击确定,但是触发了onStart方法  
    console.log("开始录音");  
})  

预期结果:

希望第一次点击确定后触发onStart方法

实际结果:

苹果在未点击确定的情况下触发了onStart方法

bug描述:

uni.getRecorderManager()首次使用时 申请录音权限还未点击确定按钮 就已经触发了recorderManager.onStart() 方法
正常情况是 点击确定按钮同意开启权限后才可以触发onStart()!

2022-05-18 14:51 负责人:天生DR 分享
已邀请:
FullStack

FullStack - 【插件开发】【专治疑难杂症】【ios上架、马甲包、白包、过审、已成功上架过几百个】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=22130】【非诚勿扰】QQ:543610866

先判断有没有权限,再进行下一步

  • 1***@qq.com (作者)

    是这么做的, 但是苹果端首次使用时先要开启一下录音管理器才能进行授权 ,但是在等待授权的过程中就已经触发了onStart方法,不知道这么说是否能明白

    2022-05-20 11:06

  • 小小菜76055421

    回复 1***@qq.com: 弹窗的授权同意后,是直接会进行业务逻辑的处理,还是说同意后,还需要重新点击录音后,才进行业务的处理

    2022-08-15 12:05

  • l***@fazyun.com

    回复 1***@qq.com: 没有权限就在使用Start然后stop去获取IOS的权限,return阻止

    2022-11-05 19:28

天生DR

天生DR - 天生我材必有用

你可以先判断一下 有没有权限

可以使用这个云端插件 https://ext.dcloud.net.cn/plugin?id=594

  • 1***@qq.com (作者)

    我遇到的BUG是ios在弹出授权窗口时 用户还未点击同意或者拒绝按钮, 但是触发了onStart方法;


    ( https://ext.dcloud.net.cn/plugin?id=594这个插件我用了,但是问题不在这一步)


    this.recorderManager.onStart(()=>{     //苹果未点击确定,但是触发了onStart方法    
    console.log("开始录音");
    })

    希望明白了我所表达的意思

    2022-06-30 09:14

  • 天生DR

    回复 1***@qq.com: 这个跟前端同事确认了 是个存在的Bug 近期会修复

    2022-08-03 15:49

  • 小小菜76055421

    回复 天生DR: 这个bug修复了吗

    2022-08-15 11:07

  • 天生DR

    回复 小小菜76055421: 目前还没有

    2022-08-15 11:42

  • 小小菜76055421

    回复 天生DR: 发现用户关闭权限后,还能进行录音,这个bug有发现吗

    2022-08-15 11:47

  • l***@fazyun.com

    回复 天生DR: 大佬啥时候可以修复啊

    2022-10-27 18:36

要回复问题请先登录注册