Android Code Snippet Voice Recognition with Resumable Subs

The ability of resumable subs to return values (added in B4A v7.3) makes it very simple to add voice recognition to your app.

Code:
Code: Copy
Private Sub RecognizeVoice As ResumableSub
   vr.Listen
   Wait For vr_Result (Success As Boolean, Texts As List)
   If Success And Texts.Size > 0 Then
     Return Texts.Get(0)
   End If
   Return ""
End Sub

You can call it like this:
Code: Copy
Wait For (RecognizeVoice) Complete (Result As String)

Example:
Code: Copy
Sub Activity_Click
   Wait For (RecognizeVoice) Complete (Result As String)
   If Result <> "" Then
     Activity.Title = Result
   End If
End Sub

Example is attached.
 

Attachments

Thank you! This is excellent and just what I was looking for. :)
 
When it fails to recognize the voice, it prompts the user to try again by clicking on the button in the dialog.

How to abort it?
 
When starting new question as advised by Erel, I suggest that people leave a link to the new thread so it can easily be found and followed.
 
hi,
it doesn't work with a tablet with android 8.1

Error
Code: Copy
onActivityResult: wi is null
 
Are you running the example as-is? What do you see when you click on the activity?
i used an example project. Nothing happened. Any of dialogs cant appear. I checked log the error is
Code: Copy
onActivityResult: wi is null
 
The ability of resumable subs to return values (added in B4A v7.3) makes it very simple to add voice recognition to your app.

Code:
Code: Copy
Private Sub RecognizeVoice As ResumableSub
   vr.Listen
   Wait For vr_Result (Success As Boolean, Texts As List)
   If Success And Texts.Size > 0 Then
     Return Texts.Get(0)
   End If
   Return ""
End Sub

You can call it like this:
Code: Copy
Wait For (RecognizeVoice) Complete (Result As String)

Example:
Code: Copy
Sub Activity_Click
   Wait For (RecognizeVoice) Complete (Result As String)
   If Result <> "" Then
     Activity.Title = Result
   End If
End Sub

Example is attached.

Hi Erel,
Is it possible that I can use a language for recognition other than English?

Thank you. -B
 
Back
Top