The voice recognition API does not allow apps to choose whether they want to use offline voice recognition or not. There's no setting for the user either. Instead, if there's an internet connection, it'll always use the online services.
This module allows you to force offline voice recognition/typing. This is useful if you're using a slow connection, if you're connected to a local network (without internet access,) etc.
What does this module do?
This module can force offline voice recognition for apps that use Google Voice. It'll work if the app uses one of the following:
- Voice typing (used by keyboards, e.g. SwiftKey)
- Voice recognition (for apps that use RecognizerIntent such as utter!)
Voice commands inside the Google Search app aren't affected. Note that if offline voice recognition doesn't work for you in the first place, this module won't fix that.
You can toggle some settings from e.g. Tasker using broadcasts. Just use these action names:
- com.germainz.googleofflinevoice.enable - Enables the module.
- com.germainz.googleofflinevoice.disable - Disables the module.
- com.germainz.googleofflinevoice.enable_voice_ime - Enables the module for voice typing.
- com.germainz.googleofflinevoice.disable_voice_ime - Disables the module for voice typing.
am broadcast -a "com.germainz.googleofflinevoice.disable"
1.2.1: The widget now uses images to indicate the module's state. This should fix text getting cut off on some devices. 1.2: Fix for the latest Google Search. Revamped blacklist. Added a simple widget to toggle module status (useful to quickly enable/disable GoogleOfflineVoice from e.g. your home screen). 1.1: The voice typing setting wasn't working correctly (because of a typo - offline voice typing was never forced.) Also, there was another typo in strings.xml, as a reboot is actually *not* required for the settings to apply. 1.0: Initial release.
- rovo89 for the Xposed Framework.