Android 2.2 provides this functionality by default.

Crappy Voice Dialer
Tested Platforms: Android 1.6 – 2.1
Tested Devices: AT&T Samsung Captivate, Sony Ericsson Xperia X10
Link to EULA

!!! Requires a Voice Recognizer to be installed !!!
!!! Install Google Voice Search to get a recognizer if you don’t already have one !!!

Why write this? I know who I want to call, but scrolling through a list
of contacts to find their name is a pain. Much easier to just say it.

Step 1: Activate the application.
Step 2: Say the name of the contact you want to call,
you may follow with cell/work/home after the name if
there is more than one number for the person.
Step 3: Wait for the call to be placed.
NOTE: You can now press “Cancel” on the recognizer in order
to gain access to the configuration menu.

Known Limitations:
Voice Recognition – Sometimes saying a name like “Ian” will
result in “e n” and “Christopher” could result in “Kristof hair”.
While I’ve employed an algorithm that scores contacts based
on both sound and spelling it isn’t perfect.
It has been brought to my attention that people with accents
may also have a problem with the recognition system.
It seems Google Voice Search works best for
North American English voices.
Full Name vs Short Name – If the contact is stored as “Thomas” and you say “Tom”
the contact may not be recognized.
First and Last Name – When the algorithm is run each of your contacts is given
a score. The contact with the highest score wins, and is dialed. Having contacts
with both name parameters filled in will help create a winner that is more
likely to be the contact you expected.
Accents – Voice Recognition is provided by the recognizer installed on the device.
Most commonly the installed recognizer will be the one installed with
Google Voice Search. The ability to compensate for accents and dialects is
out of my control and is up to the installed recognizer to handle.
Release/Bug Fixes

Version 1.7
– Fixed duplicate contact issue.
– Fixed crash when no contacts found.
– Default settings changed.
– First run now opens up the Information screen explaining how to use the app.
Version 1.6
– Some flavors of Android don’t kill the app when finish() is called.
Addresses an issue that was preventing the recognizer from getting
called more than once every few minutes on some phones.
Version 1.5
– Bug fix in the way the contact list is constructed.
Version 1.4
– Now clicking “Cancel” on the recognizer opens configuration options.
– Scoring weights are user configurable.
– Now you can get a list of possible contacts instead of just calling
the one with the highest score.
Version 1.3
– Bug fix preventing app from closing when recognizer is cancelled.
– Altered the contact scoring in hopes to improve recognition.
– Now what the recognizer heard you say is displayed after a request.
Version 1.2
– Recognizer Intent should no longer be called multiple times
in the event of a failed contact search.
– Now using 2 phonetic algorithms to determine the desired
contact instead of just 1. Improvements have been seen in both
accuracy and flexibility with this approach.
– Changed Recognizer to Web Search mode instead of Free Form mode.
This doesn’t seem to have changed much, but this might help
the recognizer pull in proper names a little easier. It
also supports more languages than the Free Form mode.
Version 1.1
– Breaks the algorithm out into a thread to address
ANR keyDispatchingTimedOut error that was reported.
Version 1.0
– Initial Release.

Leave a Reply

Your email address will not be published.