Speech Recognition unreliable?

Hi,


I was hired to write an app that uses speech recognition. I coded the app correctly: it checks for permission, asks for permission if necessary, then checks the available property of SFSpeechRecognizer to determine if speech recognition is available before it tries to use it. I also implemented SFSpeechRecognizerDelegate to check for availability changes.


I tested the app thoroughly before delivering it to my customer and it worked great.


However, the customer is complaining that speech recognition is highly unreliable on her devices. She says it works, then stops working, then works again, all within a few minutes. She says it can work fine on one device and not on another device, even in the same room on the same network. She is demanding that I explain to her what is going on. I have no idea. All I'm able to tell her is what Apple tells me, which is "Even though a speech recognizer is supported for a specific locale, it might be unavailable for reasons such as a nonfunctioning Internet connection". This explanation isn't cutting it.


My customer is very worried and this is making me look bad. Is speech recognition really this unreliable for some users? Why? Is there anything I can do, or anything I can say to reassure her that her experience isn't typical?


Frank

We actually have one tester who says that the app has never worked for her. It always displays a message that indicates speech recognition is unavailable. We checked to make sure she had given it permission, she has Wifi enabled, etc. It just doesn't work.


I don't necessarily need to fix this, but I need to be able to explain to my customer what is going on. If I can't explain it, I will look very bad. Please help.


Frank

I asked the tester who was never able to get it working to check the Settings app and tell me if Siri or Dictation were enabled. Both were disabled on her phone. I read somewhere that one or the other has to be enabled for speech recognition to work. This seems to be true. I had her turn both on, and our app started working.


This really should be documented.


Also, there's no logical reason why apps that want to use speech recognition should depend on the user having enabled Siri or Dictation. It is confusing. If the user has given my app permission to do speech recognition, that should be enough.


Frank

>...no logical reason why apps that want to use speech recognition should depend on the user having enabled Siri or Dictation.


Except that your app's scheme rides on top of that mechanism, right? Can't have one without the other, I think.

Speech Recognition unreliable?
 
 
Q