func requestRecordPermission()

in AmazonChimeSDKDemo/AmazonChimeSDKDemo/MeetingModule.swift [202:227]


    func requestRecordPermission(audioDeviceCapabilities: AudioDeviceCapabilities, completion: @escaping (Bool) -> Void) {
        if audioDeviceCapabilities == .none || audioDeviceCapabilities == .outputOnly {
            completion(true)
            return
        }
        let audioSession = AVAudioSession.sharedInstance()
        switch audioSession.recordPermission {
        case .denied:
            logger.error(msg: "User did not grant audio permission, it should redirect to Settings")
            completion(false)
        case .undetermined:
            audioSession.requestRecordPermission { granted in
                if granted {
                    completion(true)
                } else {
                    self.logger.error(msg: "User did not grant audio permission")
                    completion(false)
                }
            }
        case .granted:
            completion(true)
        @unknown default:
            logger.error(msg: "Audio session record permission unknown case detected")
            completion(false)
        }
    }