Plugin(s)
Version
7.3.0
Platform(s)
Current behavior
Hello, since the silence threshold property gets ignored, i've been set the "end" listener callback, so that it triggers "start()" again. this way i managed to achieve continuous voice transcription on android 14.
However, this isn't working on my android 10 and android 12 devices:
-
if i don't speak for a few seconds after start(), the recognition stops after a few seconds, without triggering any listener;
-
if i speak, if i stop briefly, the "end" listener never triggers, unless i intentionally stop the speech transcription. it just stops after "speechend".
I tried moving the logic to the "speechend" listener, but after a while it just gets stuck on "speechstarted" or "start" listeners.
-
i tried adding the following code to androidmanifest.xml, per https://stackoverflow.com/questions/71505916/speechrecognition-does-not-work-on-android11:
"
"
may i get some context on this matter please? Thank you, and Kind Regards.
Expected behavior
during silence, the "end" listener should trigger before the recognition acutally ends
Reproduction
i was kindly allowed to skip the reproducible example
Steps to reproduce
- put logic in "end" listener so that is isListening() === false, start() will be called;
- as user requests recognition service, init listeners
- and call start() method.
Other information
package.json snippet for reference:
"
"dependencies": {
"@angular/animations": "^19.2.9",
"@angular/cdk": "^19.2.14",
"@angular/common": "^19.2.9",
"@angular/compiler": "^19.2.9",
"@angular/core": "^19.2.9",
"@angular/forms": "^19.2.9",
"@angular/platform-browser": "^19.2.9",
"@angular/platform-browser-dynamic": "^19.2.9",
"@angular/router": "^19.2.9",
"@awesome-cordova-plugins/audio-management": "^6.16.0",
"@awesome-cordova-plugins/core": "^6.16.0",
"@capacitor-community/speech-recognition": "^7.0.0",
"@capacitor-community/volume-buttons": "^7.0.0",
"@capacitor/android": "7.2.0",
"@capacitor/app": "7.0.1",
"@capacitor/core": "7.2.0",
"@capacitor/device": "^7.0.1",
"@capacitor/filesystem": "^7.0.1",
"@capacitor/haptics": "7.0.1",
"@capacitor/ios": "7.2.0",
"@capacitor/keyboard": "^7.0.1",
"@capacitor/preferences": "^7.0.1",
"@capacitor/push-notifications": "^7.0.1",
"@capacitor/status-bar": "^7.0.1",
"@capawesome-team/capacitor-speech-recognition": "^7.3.0",
"@capawesome/capacitor-file-picker": "^7.0.1",
"@ebarooni/capacitor-calendar": "^7.2.0",
"@fullcalendar/angular": "^6.1.17",
"@fullcalendar/core": "^6.1.17",
"@fullcalendar/daygrid": "^6.1.17",
"@fullcalendar/interaction": "^6.1.17",
"@fullcalendar/scrollgrid": "^6.1.17",
"@fullcalendar/timegrid": "^6.1.17",
"@google-cloud/speech": "^7.1.0",
"@ionic/angular": "^8.5.6",
"buffer": "^6.0.3",
"capacitor-native-settings": "^7.0.1",
"clovelced-plugin-audiomanagement": "^1.0.2",
"http-proxy-middleware": "^3.0.5",
"ionic8-calendar": "^1.1.0",
"ionicons": "^7.2.0",
"jwt-decode": "^4.0.0",
"rxjs": "~7.8.2",
"swiper": "^11.2.6",
"tslib": "^2.8.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "^19.2.10",
"@angular-eslint/builder": "^19.3.0",
"@angular-eslint/eslint-plugin": "^19.3.0",
"@angular-eslint/eslint-plugin-template": "^19.3.0",
"@angular-eslint/schematics": "^19.3.0",
"@angular-eslint/template-parser": "^19.3.0",
"@angular/cli": "^19.2.10",
"@angular/compiler-cli": "^19.2.9",
"@angular/language-service": "^19.2.9",
"@capacitor/cli": "7.2.0",
"@ionic/angular-toolkit": "^12.2.0",
"@types/jasmine": "~5.1.7",
"@typescript-eslint/eslint-plugin": "^8.31.1",
"@typescript-eslint/parser": "^8.31.1",
"eslint": "^9.26.0",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-jsdoc": "^50.6.11",
"eslint-plugin-prefer-arrow": "1.2.3",
"jasmine-core": "~5.7.1",
"jasmine-spec-reporter": "~7.0.0",
"karma": "~6.4.4",
"karma-chrome-launcher": "~3.2.0",
"karma-coverage": "~2.2.1",
"karma-jasmine": "~5.1.0",
"karma-jasmine-html-reporter": "~2.1.0",
"typescript": "~5.8.3"
"
Capacitor doctor
Capacitor Doctor
Latest Dependencies:
@capacitor/cli: 7.2.0
@capacitor/core: 7.2.0
@capacitor/android: 7.2.0
@capacitor/ios: 7.2.0
Installed Dependencies:
@capacitor/cli: 7.2.0
@capacitor/android: 7.2.0
@capacitor/ios: 7.2.0
@capacitor/core: 7.2.0
[success] Android looking great! 👌
[error] Xcode is not installed
Before submitting
Plugin(s)
Version
7.3.0
Platform(s)
Current behavior
Hello, since the silence threshold property gets ignored, i've been set the "end" listener callback, so that it triggers "start()" again. this way i managed to achieve continuous voice transcription on android 14.
However, this isn't working on my android 10 and android 12 devices:
-
-
-
"if i don't speak for a few seconds after start(), the recognition stops after a few seconds, without triggering any listener;
if i speak, if i stop briefly, the "end" listener never triggers, unless i intentionally stop the speech transcription. it just stops after "speechend".
I tried moving the logic to the "speechend" listener, but after a while it just gets stuck on "speechstarted" or "start" listeners.
i tried adding the following code to androidmanifest.xml, per https://stackoverflow.com/questions/71505916/speechrecognition-does-not-work-on-android11:
"
per https://stackoverflow.com/questions/71967536/why-has-speechrecognizer-suddenly-stopped-working.
may i get some context on this matter please? Thank you, and Kind Regards.
Expected behavior
during silence, the "end" listener should trigger before the recognition acutally ends
Reproduction
i was kindly allowed to skip the reproducible example
Steps to reproduce
Other information
package.json snippet for reference:
"
"dependencies": {
"@angular/animations": "^19.2.9",
"@angular/cdk": "^19.2.14",
"@angular/common": "^19.2.9",
"@angular/compiler": "^19.2.9",
"@angular/core": "^19.2.9",
"@angular/forms": "^19.2.9",
"@angular/platform-browser": "^19.2.9",
"@angular/platform-browser-dynamic": "^19.2.9",
"@angular/router": "^19.2.9",
"@awesome-cordova-plugins/audio-management": "^6.16.0",
"@awesome-cordova-plugins/core": "^6.16.0",
"@capacitor-community/speech-recognition": "^7.0.0",
"@capacitor-community/volume-buttons": "^7.0.0",
"@capacitor/android": "7.2.0",
"@capacitor/app": "7.0.1",
"@capacitor/core": "7.2.0",
"@capacitor/device": "^7.0.1",
"@capacitor/filesystem": "^7.0.1",
"@capacitor/haptics": "7.0.1",
"@capacitor/ios": "7.2.0",
"@capacitor/keyboard": "^7.0.1",
"@capacitor/preferences": "^7.0.1",
"@capacitor/push-notifications": "^7.0.1",
"@capacitor/status-bar": "^7.0.1",
"@capawesome-team/capacitor-speech-recognition": "^7.3.0",
"@capawesome/capacitor-file-picker": "^7.0.1",
"@ebarooni/capacitor-calendar": "^7.2.0",
"@fullcalendar/angular": "^6.1.17",
"@fullcalendar/core": "^6.1.17",
"@fullcalendar/daygrid": "^6.1.17",
"@fullcalendar/interaction": "^6.1.17",
"@fullcalendar/scrollgrid": "^6.1.17",
"@fullcalendar/timegrid": "^6.1.17",
"@google-cloud/speech": "^7.1.0",
"@ionic/angular": "^8.5.6",
"buffer": "^6.0.3",
"capacitor-native-settings": "^7.0.1",
"clovelced-plugin-audiomanagement": "^1.0.2",
"http-proxy-middleware": "^3.0.5",
"ionic8-calendar": "^1.1.0",
"ionicons": "^7.2.0",
"jwt-decode": "^4.0.0",
"rxjs": "~7.8.2",
"swiper": "^11.2.6",
"tslib": "^2.8.1"
},
"devDependencies": {
"@angular-devkit/build-angular": "^19.2.10",
"@angular-eslint/builder": "^19.3.0",
"@angular-eslint/eslint-plugin": "^19.3.0",
"@angular-eslint/eslint-plugin-template": "^19.3.0",
"@angular-eslint/schematics": "^19.3.0",
"@angular-eslint/template-parser": "^19.3.0",
"@angular/cli": "^19.2.10",
"@angular/compiler-cli": "^19.2.9",
"@angular/language-service": "^19.2.9",
"@capacitor/cli": "7.2.0",
"@ionic/angular-toolkit": "^12.2.0",
"@types/jasmine": "~5.1.7",
"@typescript-eslint/eslint-plugin": "^8.31.1",
"@typescript-eslint/parser": "^8.31.1",
"eslint": "^9.26.0",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-jsdoc": "^50.6.11",
"eslint-plugin-prefer-arrow": "1.2.3",
"jasmine-core": "~5.7.1",
"jasmine-spec-reporter": "~7.0.0",
"karma": "~6.4.4",
"karma-chrome-launcher": "~3.2.0",
"karma-coverage": "~2.2.1",
"karma-jasmine": "~5.1.0",
"karma-jasmine-html-reporter": "~2.1.0",
"typescript": "~5.8.3"
"
Capacitor doctor
Capacitor Doctor
Latest Dependencies:
@capacitor/cli: 7.2.0
@capacitor/core: 7.2.0
@capacitor/android: 7.2.0
@capacitor/ios: 7.2.0
Installed Dependencies:
@capacitor/cli: 7.2.0
@capacitor/android: 7.2.0
@capacitor/ios: 7.2.0
@capacitor/core: 7.2.0
[success] Android looking great! 👌
[error] Xcode is not installed
Before submitting