Кордова-плагин-распознавание речи выдает ошибку, если попытаться перезагрузить - PullRequest
0 голосов
/ 04 июля 2019

Для преобразования речи в текст я использую плагин cordova-plugin-voicerecognition для приложения cordova ios.Работает нормально при запуске распознавания речи и показывает частичные результатыНо если я пытаюсь перезапустить, чтобы удалить предыдущие сообщения и начать распознавание из новой новой речи, плагин распознавания речи выдает исключение «Ошибка Domain = kAFAssistantErrorDomain Code = 203»

Способ, которым я запускаю распознавание речи в ios

Сначала запрашивает разрешение

    if (window.cordova) {
                window.plugins.speechRecognition.requestPermission(
                    () => {
                        this.hasPermission = true;
                        console.log('Permission' + this.hasPermission);
                        return true;
                    },
                    () => {
                        this.hasPermission = false;
                        console.log('Permission' + this.hasPermission);
                        return false;
                    }
                );
            }

, затем начинает слушать

if (window.cordova) {
            if (!this.hasPermission) {
                alert(
                    'Please enable microphone permission from Settings'
                );
                return;
            }
            const options: any = {
                language: 'en-US',
                matches: 500,
                showPartial: true
            };

            window.plugins.speechRecognition.startListening(
                (result: any [] | any) => {
                    console.log('Get speech data: ');
                    console.log(result[0]);
                    // callback function callback(result[0])
                },
                error => {
                    if (errorCallback) {
                        errorCallback();
                    }
                    console.log('failed' + error);
                },
                options
            );
   }

, когда я пытаюсь остановить распознавание, я вызываю метод stop

    window.plugins.speechRecognition.stopListening(
                    () => {
                        console.log('Stopped!');
                    },
                    () => {
                        console.log('Failed to stop!');
                    }
                ); 

Сообщение об ошибке, которое я получаю, когда пытаюсь прекратить прослушивание "Error Domain = kAFAssistantErrorDomain Code = 203"

...