1. 程式人生 > >小程式調取錄音許可權授權等(各許可權)頁面的介面順序,

小程式調取錄音許可權授權等(各許可權)頁面的介面順序,

以錄音介面為例

  var that = this;
  const recorderManager = wx.getRecorderManager()
  const options = {
    duration: 6000,
    sampleRate: 44100,
    numberOfChannels: 1,
    encodeBitRate: 192000,
    format: 'mp3',
  }
 //調取小程式新版授權頁面
      wx.authorize({
        scope: 'scope.record',
        success() {
          console.log("錄音授權成功"
); //第一次成功授權後 狀態切換為2 that.setData({ status: 2, }) // 使用者已經同意小程式使用錄音功能,後續呼叫 wx.startRecord 介面不會彈窗詢問 // wx.startRecord(); recorderManager.start(options);//使用新版錄音介面,可以獲取錄音檔案 }, fail(){ console.log("第一次錄音授權失敗"); wx.showModal({ title: '提示'
, content: '您未授權錄音,功能將無法使用', showCancel: true, confirmText: "授權", confirmColor: "#52a2d8", success: function (res) { if (res.confirm) { //確認則開啟設定頁面(重點) wx.openSetting({ success: (res) => { console.log(res.authSetting); if
(!res.authSetting['scope.record']) { //未設定錄音授權 console.log("未設定錄音授權"); wx.showModal({ title: '提示', content: '您未授權錄音,功能將無法使用', showCancel: false, success: function (res) { }, }) } else { //第二次才成功授權 console.log("設定錄音授權成功"); that.setData({ status: 2, }) recorderManager.start(options); } }, fail: function () { console.log("授權設定錄音失敗"); } }) } else if (res.cancel) { console.log("cancel"); } }, fail: function () { console.log("openfail"); } }) } })