Switch Voice Dialer With Voice Search

Last Updated:

  1. dougiesgoindeep

    dougiesgoindeep Active Member

    Is there anyway to switch the Voice Dialer application with the Voice Search application?

    I want to be able to activate Voice Search with a bluetooth headset, instead of Voice Dialer (so I can use navigation, google search, and all that jazz...handsfree).

  2. inssane

    inssane Well-Known Member

    I would like to know this too. I would say at this point the answer is no.
    I am not sure how Froyo activates an application via the bluetooth and it would be nice to get the voice search instead since the voice dial is as crappy over BT as it was over the handset and it calls wrong numbers without double checking or confirming the number with me.
  3. Redflea

    Redflea Well-Known Member

    Hmmm...i've had good luck w/the voice BT dialing in Froyo, been very accurate for me. Maybe my voice just happens to be generic enough to work well w/it. :)
  4. kevin@teslacoilsw

    kevin@teslacoilsw VIP Member VIP Member

    Interesting idea.

    It looks like VoiceDialer can receive a android.intent.action.VOICE_COMMAND and VoiceSearch cannot. But it should be a simple manner of making an app that can receive VOICE_COMMAND and then just sends a standard MAIN intent to VoiceSearch.


    [edit]Not so simple, as VoiceSearch won't read from the bluetooth device...

    It's easy to get the Bluetooth 2-second button push, you just need:
    Code (Text):
    1. <intent-filter>
    2. <action android:name="android.intent.action.VOICE_COMMAND"/>
    3. <category android:name="android.intent.category.DEFAULT" />
    4. </intent-filter>
    And it's easy to start the Voice Search activity:
    Code (Text):
    1. Intent intent = new Intent();
    2. intent.setComponent(new
    3.     ComponentName("com.google.android.voicesearch",
    4.                   "com.google.android.voicesearch.RecognitionActivity"));
    5. startActivity(intent);
    But the VoiceSearch, and even the general Recognition APIs don't support reading from bluetooth or a wav file or anything but the microphone on the phone itself. The way VoiceDialer works is it has it's own recognition engine that compares what you said against your contacts.
    teddyearp likes this.
  5. dougiesgoindeep

    dougiesgoindeep Active Member

    Kevin, most of what you said is over my head, but I think the conclusion was it does not work because the Voice Search feature cannot use the BT mic?

    If that is the case, is there anyway to just activate Voice Search on the phone (instead of Voice Dialer) and use the phone's mic? Something simple like switching the application names and tricking the phone into activating one over the other? For my specific situation, the phone is on my car's dash, so the phone's mic could pickup my speech (the BT mic is not necessary, although would be much more convenient for other situations).
  6. kevin@teslacoilsw

    kevin@teslacoilsw VIP Member VIP Member

    Sure! Initially you'll get the "Complete action using" dialog, then you can set BluetoothVoiceSearch as the default action.

    Again, note, this does NOT use the bluetooth's microphone.

    APK: http://teslacoilsw.com/android_misc/BluetoothVoiceSearch.apk
    Source: http://teslacoilsw.com/android_misc/BluetoothVoiceSearch_src.zip

    I'm not going to post it to the market since it uses the wrong microphone, but if someone else wants to they can. The code is released under the public domain, do whatever you want with it.
    Whiteblazer01, imfm and ericks17 like this.
  7. dougiesgoindeep

    dougiesgoindeep Active Member


    I will try this out a little later. This only uses the phone's mic for the voice search, right? It still uses the BT mic for the phone call?
  8. kevin@teslacoilsw

    kevin@teslacoilsw VIP Member VIP Member

    Yeah it shouldn't effect anything aside from the bluetooth trigger to open voice dial. Calls should be normal.
  9. dougiesgoindeep

    dougiesgoindeep Active Member

    It works!

    Thanks again.
  10. wvufan

    wvufan Active Member

  11. Dave Kobliska

    Dave Kobliska New Member

    Thanks for the code. It works. Also voted for your issue. (Fingers crossed.)

    BTW, why do you think Android would reincarnate it's excellent voice recognition software (aka "Voice Search") into a Frankenstein'ish :eek: body like "Bluetooth Voice Dialer"? I can't believe the difference between the accuracy of the two programs! :mad:

    Also, upon further testing, realized that Bluetooth Voice Dialer DOES have the sophistication to work even when the phone's screen is off and the device is locked behind the security pattern screen, which is pretty nice and *truly* "hands free." (I'm sure there's a more technical way of describing the phone's state, but those are my lay terms.) Of course you probably wouldn't be interested in beefing up your simple code to do all that would you? ;)
  12. powerbird101

    powerbird101 New Member

    For some reason i cant get the apk to run at all, it installed properly but doesnt activate. so it continues to use voice dialer not voice search, im running android 2.2 on the EVO 4G. any suggestions friends?
  13. tjennhw

    tjennhw Active Member

    I've tested two apps that use the BT mic.

    Super BT Froyo. Basically, all audio from the phone goes to your headset and all sound from your headset goes to your phone. Goes back to normal on phone calls. Have to turn it off before turning off headset or phone resets.

    Ear Buddy also sends voice and audio via BT mono but only sends music when music is playing, not all the time, and allows you to initiate google voice search by pressing the bluetooth button on your headset!

    Haven't tested Ear Buddy fully yet, but there's an update that fixed a major phone reset problem it was having.

    Both $3
  14. inssane

    inssane Well-Known Member

    Vlingo InCar has made me not care anymore :)

    Good suggestions though!
  15. tjennhw

    tjennhw Active Member

    Vlingo Incar won't send sounds to BT. Ear Buddy is ideal for Motorcycles.
  16. imfm

    imfm Well-Known Member

    Thanks for coding and posting this! Google should be paying you.
  17. Whiteblazer01

    Whiteblazer01 Member

    Thank you, works great!!

Share This Page