收藏
回答

直接唤起 无效 getRecorderManager.start() ?

隐私协议中申请了录音权限了 但是在 onload 中直接触发 开始录音却无法自动唤起需要用户隐私授权的弹窗

必需要从 获取昵称 获取用户地理位置 唤起一次获取用户同意隐私协议才行 再触发录音才可以

Page({
  data: {},
  onLoad() {
     this.initRecorder()
  },
  initRecorder() {
    const recorderManager = wx.getRecorderManager()
    console.log('recorderManager :>> ', recorderManager)

    recorderManager.start({
      duration: 600000, // 设置录音的时长
      sampleRate: 44100, // 较高的采样率,捕捉更多细节
      numberOfChannels: 1, // 单声道
      encodeBitRate: 96000, // 比特率适中,保证录音质量
      format: 'pcm', // 格式
      frameSize: 50, // 较小的帧大小,更灵敏地捕捉音量变化
    })
  },

})


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

2 个回答

  • 正好时光
    正好时光
    11-21

    官方的隐私弹窗必须是用户主动触发才能弹出,你可以自己写一个,通过wx.getPrivacySetting查询是否同意,然后弹出

    11-21
    有用
    回复
  • optimistic
    optimistic
    11-21
    1. 确定隐私协议生效了吗,线上需要提审
    2. 如果要从其他地方同意隐私协议,大概率是你的隐私协议无效,可以看控制台有没有报错
    11-21
    有用
    回复 1
    • 别太当真
      别太当真
      11-21
      隐私协议中 很早之前就申请了麦克风权限 从其他api 同意后 这里就能唤起了
      11-21
      回复
登录 后发表内容