Complete history

Below you can find the change log for Enhanced SMS & Caller ID.

Please do not hesitate to contact us with any concerns that you may have. And if you like the app, please add a market comment mentioning the handset (and headset) that you are using so that we can keep a list of them on this site.

Full Enhanced SMS & Caller ID + History

Version 3.8.1 - 30427

  • Car compatability FIXED!
  • Added back support for MMS & RCS messages
  • Fixed an issue with Voice reply conflicting with other messages.
  • Continued migrating code base to non-deprecated Android Framework APIs
  • Gmail support fixed (still awaiting approval from Google before it will work for all)

Version 3.8.0 - 30426

  • Fixed permissions issues (e.g. constant prompting of permissions related to mail apps and Bluetooth)
  • Removed support for K9/Kaiten mail (Kaiten is abandoned and K9 doesn't provide access to messages anymore)
  • Fixed an issue with how we request permissions for AquaMail
  • Fixed an issue with duplicate AquaMail notifications
  • Continued migrating code base to non-deprecated Android framework APIs

Version 3.7.1 - 30425

  • Voice Prompts / Voice Reply added back for SMS
  • Voice Prompts added back for other notification types
  • Other Apps list now includes all apps on device (not just sstem apps)
  • Updated audio routing (still a work in progress)
  • Updated components using deprecated Android APIs (also still a work in progress)

Version 3.7.0 - 30424

  • First release since 2018!
  • App is back in the store but not 100% functional

Version 3.5.8 - 406

  • Point users to the correct setting with regards to Gmail notifications
  • Fixed an issue for those running Nugget and lower with the "Start on Boot" option
  • Added a multi-contact picker for SMS & Call white/black lists
  • Fixed an issue with licensing on Android O and up
  • Minor bug fixes for issues reported to us

Version 3.5.7 - 404

  • Added a workaround for broken Gmail notifications functionality
  • Fixed logging (and ability to send the log)
  • Added the ability to block SMS messages by phrases
  • Minor bug fixes for issues reported to us

Version 3.5.6 - 401

  • Phrases with numbers greater than or equal to 5 digits long are now broken apart
  • Updated how messages with notification delays are handled
  • Minor bug fixes for issues reported to us

Version 3.5.5 - 400

  • Improved DND so that "Total Silence" is just that
  • Android 8 bug fix for caller ID

Version 3.5.4 - 399

  • Removed the Accessibility service on devices where the Notification listener is available (e.g. Android 18+).
  • Added a proper description for the Accessibility service on devices where it's used.
  • Updated the Babel language chooser to list languages alphabetically.

Version 3.5.3 - 397

  • Markedly improved voice recognition over Bluetooth!
  • Added an option to control the beep that occurs during voice recognition!
  • Other various bug fixes to improve stability

Version 3.5.2 - 395

  • Fixed sporadic issues with Bluetooth and voice recognition where system volume would mute.
  • Other various bug fixes to improve stability!

Version 3.5.1 - 394

  • No longer support versions of Android lower than 4.0.4
  • Improved accessibility
  • Added Email "Escape Sequences" - text that act as termination sequences for email read outs
  • Fixed an issue with our notification listener that prevented it from capturing a notifications full text
  • Minor bug fixes to issues found in the crash reporter

Version 3.5.0 - 393

  • Babel language detection now supports Farsi and Vietnamese.
  • Preferences can now be backed up and restored from Google Drive.
  • Added the ability to select which bluetooth device can start / stop the app.
  • Updated the bundled Locale / Tasker plugin to utilize the latest Locale API.
  • Fixed an issue with the black / white listing of specific "Other Apps" messages where only certain messages would apply the black / white list.
  • Fixed issues with Android 7.1.x related to new platform changes.

Version 3.4.11 - 392

  • Fixed an issue where a wakelock was not being released properly. This caused battery drain in some instances.

Version 3.4.10 - 391

  • Fixed some issues that prevented some users from using the app.

Version 3.4.9 - 390

  • Fixed an issue where an error message prevented users from saving their preferences.
  • Minor tweaks (again) to voice recognition over bluetooth.

Version 3.4.8 - 389

  • Updated to properly support Android N (which requires a new permission).
  • Minor tweaks to voice recognition over bluetooth.

Version 3.4.7 - 388

  • New Arabic language translations added.

Version 3.4.6 - 385 / 387

  • Minor tweaks to voice recognition over bluetooth.
  • Fixed issues reported by the internal crash reporter.

Version 3.4.5 - 384

  • Fixed an issue with Gmail label filtering where the list did not reflect the user selection.
  • Fixed an issue with the license check where valid responses where presumed to be invalid.

Version 3.4.4 - 383

  • Fixed an issue for those running Android 2.0 - 2.3.7 where the app would crash on start.

Version 3.4.3 - 380

  • Fixed an issue loading contact photos in the voice reply / voice prompt dialogs.
  • Updated our Gmail Label filtering so that you can blacklist labels in addition to specifying a whitelist.
  • Removed SVOX language examples from the app (appears they have ceased to exist).
  • Added an option to our Calendar notifications to exclude in-progress reminders.
  • The accessibility listener is no longer functional on Android 4.4+. Please use the Notification listener instead.
  • Added a shortcut option to "Other apps" that opens the device notification listener settings.
  • Updated how we process "Other apps" notifications that do not use delimiters in the alert.
  • Moved some of the permissions that we require to a "Runtime check". Some features that run where a special system permission is required, now show a dialog alerting the user to the situation.
  • Updated our internal Gtalk client library version.
  • Fixed a bug that caused the voice reply dialog to pop up on the very next alert whenever SMS messages where interupted by a phonecall.
  • Various code improvements to keep the app up to date with the latest Android toolkits.
  • Fixed an issue where the unique value used for checking the license changed each check and caused the occasional (for some, frequent for others) unlicensed notification.

Version - 375

  • Fixed an issue with the "Show icon" preference that prevented it from working properly on Android 5+.
  • Added a workaround to the bug found mentioned here regarding excessive delays for voice recognition.
  • Added a "Filter wearables" notification option.
  • Fixed an issue with notification delays not working properly on Android 7.
  • Removed the reverse lookup feature.
  • Added a battery / data usage warning to our internal Gtalk / Hangouts Client.
  • CyanogenMod 13 / Android N bug fixes.
  • Various bug fixes.

Version 3.3.9 - 373

  • Initial Android N preview support

Version 3.3.8 - 372

  • Fixed an issue for those running Android 4.0.3 and 4.0.4 that would cause the app to crash when menus were selected.
  • Fixed issues in user submitted crash reports.

Version 3.3.7 - 371

  • Fixed an issue for those running Android 4.0.3 and 4.0.4 that prevented them from opening the app.

Version 3.3.6 - 370

  • Fixed an issue with phone call notifications being duplicated which then caused the volume of the ringer to mute.
  • Fixed issues discovered in user submitted crash reports.

Version 3.3.5 - 369

  • Fixed an issue on Android 6 that caused notifications to be read out in random order.
  • Updated how our application prompts users for permissions on Android 6.
  • Fixed an issue with the Accessibility listener on devices running android versions less than 4.4.

Version 3.3.4 - 364

Release notes
  • Added an option for detecting duplicates at on a per app basis.
  • Added a shortcut, to the device Notification listener settings, to our informational dialog when enabling "Other Apps".
  • Added a "Notification delay" option to Gmail.
  • Fixed an issue with the Voice reply dialog not terminating (thus leaving the screen on and draining battery).
  • Fixed an issue with MMS messages detected via crash reports.
  • Fixed an issue with the eCID toggle widget that caused the eCID icon to disappear upon reboot of the device.
  • Updated the methodology for "Notification delay" for SMS messages when the read count is greater than 1.
  • Fixed an issue with the preference import/export functionality that caused a crash for some users.
  • Fixed an issue with the delimiter names in the other apps "Ignore when" option. They didn't match the customize text delimiter names.
  • Fixed an issue our Hangout client that sometimes created duplicate messages and consumed too much data.

Version 3.3.3 - 355

  • Fixed the wording of the headset only affirmative and negative buttons.
  • Fixed an issue with the about dialog not showing on some devices.
  • Fixed an issue with the app not being able to load on devices running Cyanogenmod.

Version 3.3.2 - 354

  • Fixed an issue with our main widget and it crashing on addition to homescreen.
  • Fixed an issue with disabled preferences and how they look.
  • Fixed an issue with the Emoticon chooser that prevented it from being usable.
  • Fixed an issue with "Other apps" white/blacklisting list views.
  • Fixed an issue with some text in lists not being legible with the light theme.

Version 3.3.1 - 353

  • Added a dark theme (Application settings > Look & Feel)
  • Fixed an issue where the app would not load when freshly installed on Android 6+ devices.

Version 3.3.0 - 352

  • Removed the ability to manually perform reverse lookups in the app.
  • Updated many of the 3rd party libraries used by the app.
  • Updated the general look and feel.
  • Fixed issues reported by the internal crash reporter.

Version 3.2.5 - 351

  • Updated "Wave to mute" so that it would work in situations where you were not docked or device was not charging.
  • Updated the "Start with Bluetooth" option to prevent wearables from causing the app to start up.
  • Fixed an issue with Voice reply and Voice prompts that would, in certain cases, cause battery drain.
  • Updated the strikethrough in our widgets to be red instead of light gray.
  • Addressed some issues that caused app instability.

Version 3.2.4 - 349

  • Updated how "Lines" work in other apps. Now it is strictly for lines in a notification and duplicates are filtered out.
  • Fixed a bug with phone calls and Silent mode.
  • Fixed an issue with voice recognition that resulted in the recognizer not listening for a response (e.g. stuck on red indicator).
  • Fixed an issue with voice recognition over Bluetooth.

Version 3.2.3 - 348

  • Fixed an issue where case insensitive shorthand dictionary entries were not case insensitive if they were in upper case characters.
  • Fixed issue parsing the IDs of MMS messages..

Version 3.2.2 - 347

  • Fixed an issue where the new share provider kept saving icons on internal storage.

Version 3.2.1 - 346

  • Fixed an issue where the eCID launcher could not be added to the quick toggle widget.
  • Fixed an issue where the "Other Apps" notification delay appeared not to be set.
  • Italian language updates.

Version 3.2.0 - 345

Release notes
  • Fixed:
    • Fixed an issue that previously resulted in the app crashing when reading specific types of text.
    • Fixed an issue on Samsung devices that resulted in private / blocked numbers being announced as unknown numbers.
    • Fixed a number of issues reported via the automatic crash reporter.
    • Fixed an issue where lines text was not read out properly for certain other apps.
  • Notification delay moved from being a global option to a per other app delay. Please reconfigure your speech delays as necessary.
  • Email whitelisting and blacklisting can now be applied on a per account basis (Each entry is currently limited to one or all accounts).
  • Made the eCID launcher icon visibility configurable for the quick toggle widget.
  • Random salt now generated internally for each account when storing Google authorization tokens.
  • Updated German language translations.
  • Updated the share provider on those running Android API version 14+.

Version 3.1.2 - 342

  • Fixed:
    • Caller ID readout sounded faint when option to force audio output through media stream was used in conjunction with "Lower ringer volume" option.
    • Option to send Other app notifications after a time delay didn't previously do anything.
    • Issue on Lollipop where caller ID would continue reading out after picking up the phone call.
    • Fixed the widget for toggling the shake to mute functionality.
  • Added Car Compatibility, Shake to Mute Toggle, Voice reply toggle and Global mute widgets to the main Enhanced SMS & Caller ID widget.

Version 3.1.1 - 340

  • Updated the versions of libraries we depend on.
  • Fixed some bugs discovered from crash reports.

Version 3.1.0 - 338

  • Fixed an issue where Caller ID through Bluetooth did not work when user selected the "Force audio through media stream" option.
  • Fixed a bug in the phone call reader that resulted in 2 simultaneous readouts.
  • Addressed some issues discovered by the crash reporter.
  • Added a feature to ignore other app notifications when a particular field of interest is blank. "Ignore when ..." is configurable on a per app basis.
  • Added a feature to Other apps notifications that allows user to black or whitelist messages based on text contained in notifications.
  • Fixed an issue where Gmail voice reply would send our app signature regardless of whether you wanted it to.
  • Fixed an issue with SMS voice reply where users with "Compose Only" option didn't get to compose a fully functional message.
  • Updated internal Gtalk/Hangouts XMPP library.

Version 3.0.6 - 336

  • Fixed an issue with voice recognition not working properly with Bluetooth on devices running versions of Android less than 5.0.

Version 3.0.5 - 335

  • Fixed an issue with voice reply and use of the word "retry" after long message dictation.
  • Fixed an issue with the application not detecting SCO bluetooth audio correctly and this resulted in extremely poor audio in some instances.
  • Fixed an issue with the phone calls not obeying silent mode when the user chose all audio to go through the media channel.

Version 3.0.4 - 334

  • Voice prompt yes and no buttons now match user configuration.
  • Fixed an issue with Start with Headset and the app starting and stopping with wearables.
  • Fixed an issue with the SMS delay when notifying of SMS messages more than once.
  • Added a car compatibility widget (device restart may be required for use of new widget).
  • Added a widget to globally turn disable shake to mute (device restart may be required for use of new widget).
  • Fixed an issue where user would loose all checkboxes for other apps if they reorientated the screen before the Other apps chooser loaded.
  • Fixed an issue with Car compatibility mode and bluetooth sharing service crashing during audio playback.
  • Fixed an issue where users couldn't update the voice prompt message with the new delimiters using "Customize Text".

Version 3.0.3 - 329

  • Fixed an issue with voice prompts. When the voice recognition engine timed out, it would not restart.

Version 3.0.2 - 328

  • Fixed an issue that resulted in a pop up saying there was an error converting your speech to text. Thanks to Chris B for bringing this to my attention and helping me test a fix!
  • Updated the example phrases in the "Other Apps" chooser so that it doesn't read out delimiters when there are examples of text from actual other applications.
  • Some russian language translations (Thank you Kartonick).

Version 3.0.1 - 327

  • Added an option to control audio ducking versus audio pausing requests to the system. "Application Settings > Other Options > Focus loss ducking".
  • Fixed an issue where Caller ID did not play through wired headsets.
  • Updated the reverse lookup activity to allow users to save contact details when they click on the map marker.
  • Fixed an issue with Car compatibility mode, voice recognition and the bluetooth service dying on Android 5+.
  • Fixed an error found in crash reports on Api 19 device (Samsung) that was occurring with the "Start with headset" option.
  • Updated the Voice recognition engine to better deal with timeouts, etc. It should be much more stable (usable) now.
  • Support for AutomateIt. New widget for loading preferences has been created.

Version 3.0.0 - 324

  • Fixed an issue that resulted in intermittent force closes when a phone call was received.
  • Addressed some user reported Force Close bugs.
  • Added logic to the talking caller id notifications to obey lower ringer volume and mute ringer while using a wired headset.
  • Send, retry, restart, cancel and continue now supported for voice reply.
  • Caller ID over call waiting now uses 75% of the volume instead of full volume.
  • Added Gmail Voice reply feature.
  • SMS Voice reply now asks you if you want to reply before listening for a response. The default behaviour is to ask you and this can be disabled in SMS options.
  • Reply features now support the following words:
    • "Retry" to retry the last phrase,
    • "Start over" to start the whole process over,
    • "Cancel" to cancel recognition, and
    • "Continue" to add more words to the current message.
  • Headset only for each other app is now possible.
    Click on the config icon for the "Other app" to set this.
    Enabling "Other Apps" > Headset Only global option will also override the per app settings.

Version 2.9.5 - 321

  • Fixed some user reported crashes.

Version 2.9.4 - 320

  • Source code optimizations that resulted in a much smaller install file (from 4.4 MB to 3.94MB).
  • Enhancement: Lower ringer volume / disable ringer now supported with wired headsets.
  • Fixed some memory leaks that occurred on Android 5+.
  • Fixed some user reported crashes.

Version 2.9.2 - 317

  • Added a contact picutre to voice prompt / voice reply pop up dialog.
  • Fixed a memory leak in the phone call announcer.
  • Fixed an issue with the cancel button for deleting preferences.
  • Fixed some user reported crashes.

Version 2.9.1 - 314 / 315

  • Fixed an issue with the app loading on Android 2.3.3 through 2.3.6.

Version 2.9.0 - 313

  • Fixed an issue with the TTS engine override option where the override was ignored unless language detection was enabled for the overridden engine language.
  • Fixed: Removed the dependency for wave to mute for incoming calls on shake to mute.
  • Removed compatibility library for text to speech that was present for devices running android 2.0 and 2.1.
  • The test functionality for OtherApps while configuring "What to Say?" now uses actual example text from the notification where it exists (Android versions 4.3+).
  • Updated our basic Locale / Tasker plugin user interface so it's behaviour is more intuitive.
  • Fixed an issue where audio is forced through media stream even when device is in silent mode.
  • Updated our TTS library for Android 5.0 compatibility.
  • Fixed: Certain text in voice reply would use english translations, rather than the users language.
  • Added a dialog to help users when no accounts are found for supported third party mail apps.
  • Hungarian and Russian language updates.
  • Updates for Android 5.0 compatibility.
  • Fixed an issue with the Google Account chooser indefinitely loading on Android KitKat and higher.

Version 2.8.6 - 309

  • For car mode, we check for any bluetooth connection and not just an A2DP connection.
  • Slider for how many words to readout, says the bounds are 1000 but only goes to 200.
  • Russian translation fix. Word "Revert" was actually "Cancel"; changed it to "Revert".
  • When showing "Other Apps", we now show the selected apps first.
  • Added an option to force audio through the media stream. This was added to address some compatibility issues with car stereos using HDMI.
  • Added an option to the Shake to mute feature that disables the shaker when connected to Bluetooth.
  • Added the ability for users to download and import "defined emoticons" into their shorthand dictionary. Currently, this feature is in English only.
  • Fixed an issue with Hangouts / GTalk announcing contacts as unknown.
  • Fixed an issue with "Other Apps" not showing a complete list of apps when there were 2 apps with the same name.
  • Fixed an issue where you could not select the last app in the "Other Apps" list.
  • Fixed a UI bug that resulted in the absence of the text input area for SMS auto responses.
  • Fixed a UI bug in the "Shorthand" dictionary list that blocked users from viewing the shorthand word and its mapped value without selecting it.

Version 2.8.5 - 302

  • Fixed an issue with the widgets that muted voice reply and notifications.
  • Updated the Czech language translations (thanks David Vlk).
  • Remove linebreaks from messages before reading them out (may have been causing some TTS engines to crash).
  • New option for Calendar events to only read out the new events and to ignore events that have past.
  • Ensure mute is off when there are no more app widgets remaining on the home screen.
  • Other bug fixes.
  • Gtalk / Hangouts client no longer treats read nickname and read first name as mutually exclusive options. They both can be selected.
  • Removed the pause media option since it was only used on Android 2.2.
  • Added the +1 widget to the about / version screen.
  • Fixed an issue with audio ducking and playing media not coming back after voice recognition.
  • Swedish language updates (Thanks Mikael Folkesson).
  • Hungarian language updates (Thanks to Appel).
  • Japanese language translations added.
  • Addressed an issue where the Hangouts client would fail to restart when the network disconnected and then reconnected.
  • Using Androids new Google play services library.
  • Updated to Google maps V2 (for those running android 3+).

Version 2.8.4 - 299

  • Preliminary customizing of calendar event reminder text.
  • Updated the Gtalk/Hangouts internal library to address some usability issues and errors.
  • Updated the location where backed up preferences are saved to. The current location is removed on app uninstall.
  • Updated the audio ducking request the app makes to other apps while reading out notifications.
  • Fixed an issue with the "Delete" backed up preference button. It didn't do anything previously.
  • Updated the location where preferences are saved when you back them up. They are now stored in the Download/enhancedsmscallerid/ directory.
  • Updated Hungarian translations (thanks Appel).

Version 2.8.3 - 292

  • Fixed: Voice reply would prompt when device was on vibrate mode.
  • Voice prompts did not obey silent mode or vibrate mode.
  • Added first name only option for Email messages. This will only work for contacts.
  • Fixed an issue with those on JellyBean, Google Now hotword detection and our accessibility service.
  • Added some UI changes to the app chooser list in "Other Apps".
  • Updated Other Apps so that apps without labels also appear in the list.
  • Changed "Compatibility" mode in Gtalk settings to "Hangouts" to better indicate what it is intended to be used for.
  • Added a longer pause before speech recognition assumes you have stopped talking.
  • Updated the accessibility service for other apps, so that it handles the customizations available to the Notification listener.
  • Updated the internal Gtalk/Hangouts client.
  • Fixed an issue where we didn't properly cleanup our KatMail listener when our app terminated.
  • Voice prompt now has configurable max retry count. When the recognition engine doesn't hear anything, it will re-prompt you, at most, this many times.
  • Voice reply sends our apps beep to ear piece when connected. Note that the recognition engine does beep on it's own on some devices. We cannot control that.
  • Updated MMSHelper so that it uses our newer caching model to prevent unordered readouts and other strange MMS related issues.
  • Other Apps list is now sorted by app name instead of package name when a name exists.

Version 2.8.1 - 286

  • Updated the Contact Picker for Screen by number (used for SMS and Calls) to only suggest contacts that have phone numbers.
  • Updated the customize text feature for "Other Apps". You can now customize the text on a per app basis.
  • Added a diagnostic (hidden) setting for Other Apps. If you have trouble configuring the text for Other Apps, please contact me for assistance.
  • Fixed a user reported issue with MMS messages.
  • Fixed: java.lang.IllegalStateException: Process 1052 exceeded cursor quota 100, will kill it.
  • Fixed an issue with MMS receiver that resulted in announcing the wrong sender of the message.
  • Updated Voice reply / Prompts so we interact with the microphone directly, bypassing the Google Voice Search app.. This requires a new permission.
  • Improved Voice reply / Prompts through bluetooth. Recognition is now much better with a headset!
  • Changed the voice reply / voice prompt layout to be a "pop up" rather than full screen.
  • Updated the voice reply / voice prompt so that the app does not unlock the lock screen.
  • Romanian, Czech, and Slovak language updates.
  • Added a timeout setting for SMS Voice Reply that defaults to 30 seconds. You can now adjust this to a value you prefer, but keep in mind that a value that is too small will make this feature unusable.
  • Added the ability to manually enter a phone number, instead of choosing a contact, in call and sms screening.

Version 2.8.0 - 277

  • Updated the "Language Choices" to cover all the languages the app supports and show options in users native language.
  • Updated the SMS notifications to improve MMS support.
  • Some minor bug fixes (for issues reported by the automatic crash reporter).
  • Added guard clauses for android 2.1 users to prevent them from using Gtalk Compatibility mode since their devices don't support it.
  • Updated the internal third-party Gtalk libraries.
  • Moved the directory containing preferences, logs, etc to Android directory from the Download directory.
  • On devices using Android KitKat or higher, we have fixed an issue where media is not restarted after performing voice reply. At this time, other versions of Android aren't as lucky.
  • Added a brief delay for bluetooth headset connection before message playback so that messages are not cutoff when they are announced.
  • Updated how the default TTS engine language was chosen on Android 4.3 +.
  • Improved the method for detecting a network connection.
  • Updated "Car Compatibility Mode" for those on Android KitKat that hopefully brings back the functionality for all!

Version 2.7.0 - 272

  • Updated Voice prompts for email. Prompt can now be configured to read out the subject in a prompt.
  • Blacklisting / whitelisting for Gmail now can utilize the ReplyTo address.
  • Fixed: Voice reply widget wouldn't toggle states appropriately.
  • Fixed a typo in the app widget configuration that prevented users from being able to toggle the state of AquaMail notifications.
  • Fixed a couple of user reported crashes in the Accessibility/Notification listeners.
  • Fixed a compatibility issue with IVONA TTS engine that prevented our app from using the default language (even when it was the only installed language) when the device locale was not the same as the installed IVONA language.
  • Added facedown (screen down) mute for all our app notifications.
  • Added K-@ mail support to the app. This requires a new app permission.
  • Added the ability to delete preference files.
  • Added Korean language translations (special thanks to Seong-Yeop Jeong).

Version 2.6.6 - 271

  • Fixed a bug that prevented our "Other apps" listener from receiving updates to the user selected list of apps.
  • Fixed a bug with the shorthand provider that was triggered in the "Other Apps" filters.
  • Updated the logic around URL filtering from messages to improve / optimize it.
  • Updated the applications' launcher icon.
  • Added an option to say family name first for calls and text messages.
  • Added a new option that allows you to send sms auto responses.
  • Improved the reliability of the Gtalk / Hangouts internal client. Updated FAQ to illustrate how to set up the client.

Version 2.6.5 - 268

  • Attempted to alleviate the issue with persistent notifications on Android 4.3+. Please contact us if you think we can do more or have ideas on improving this issue!
  • Fixed an issue on Android 4.4 that made the in app menus unusable.
  • Fixed an issue with the Babel engine chooser that prevented it from working properly on Android 4.3.
  • Added zero as a possible value for loop pause during talking caller id.
  • Updated translations for the Slovak language.
  • Fixed a null pointer exception in oncallstatechanged.
  • Fixed a bug with the customize text view that was triggered on certain Samsung devices running Android 4.3.
  • Updated the Customize text view so that clickable areas are larger and easier to click on.
  • Facedown mute for calls moved to Mute preferences.
  • No longer for Voice Replies when phone is in silent mode.
  • Enhancement:Implemented an internal Google talk client that supports chats over Hangouts

Version 2.6.4 - 265

  • Addressed some language detection issues that affected users running Android 2.2+.
  • New feature! Added the ability to select preferred voice engines for those using Babel or automatic language detection.
  • Babel Chooser (e.g. activity that maps Contacts to specific languages) no longer displays language variants, since the app ignores them anyway.
  • Fixed an issue that caused the app not to work at all for those on Android 2.1.
  • Fixed a problem on Android 4.1+ that caused a seemingly random force closes.
  • Fixed an issue where bluetooth would crash and cause an error while performing voice recognition.

Version 2.6.3-263

  • Added
    • Updated the app to use the Notification's API on Android 4.3. Users configure their device to allow ecid to access notifications (Settings > Security > Notification access) or it will not work. Users on 4.3 can now turn off the accessibility service. This new listener requires a new app permission.
  • Fixed
    • Fixed an issue with the Babel chooser on Android 4.3 that resulted in a loading screen that lasted indefinitely.
    • Fixed an issue that affected the S4 and SMS notifications.
    • Fixed an issue with Dutch language translations that resulted in odd characters being displayed.
    • Fixed an issue where the Gmail listener service wouldn't start properly after selecting an account.

Version 2.6.2

  • Minor bug fixes.
  • Improved the internal Gmail IMAP client based on issues reported by our users.
  • Added support for the Ad supported version of Kaiten mail.

Version 2.6.1

  • Improvements
    • Caller ID Through Bluetooth: You **WILL** need to Enable "Disable Ringer" under Caller ID Options > A2DP options. This may not work for all headset/handset combinations.
    • Fixed an issue on Android 4.3 where multiple status bar icons appear in the status bar.
    • Refactored and optimized all worker threads.
    • Improved the usage of wakelocks in the app to prevent leaks and to improve battery usage. In addition, we now use wakelocks more often, so that a device in deep sleep will still have messages read out.
    • Updated the internal Gmail client library to 1.5.0 from 1.4.4.
    • Added a Gmail option, called "Compatibility", for those handful of users that receive inconsistent Gmail notifications. Please contact support before using it!
    • Added the ability to enter a Gmail password (currently hidden from users), for those users that do not want to use "passwordless" authentication.
    • Fixed a bug with the Facebook button.
    • Gracefully handle instances when choosing apps in "Other Apps" and the package manager dies. The package manager is responsible for telling eCID what apps are installed and sometimes crashes.
    • Fixed an issue with the revert button in What to say. Clicking on revert reverted text back to your previously saved text and not the app default text.
    • Optimized and updated sections of code where user submitted error reports showed there to be problems.
  • New Features
    • Added the ability to use volume keys instead of voice recognition for voice prompts.

Version 2.6.0

  • Added a locale settings plugin that allows you to load any of your backed up preferences depending on a locale condition.
  • Added a proximity sensor for car/desk docks that allows you to wave at the phone to have it stop talking.
  • Fixed the contact picker for the contact screening activities.
  • Fixed an issue where screen off only caused messages not to be read, yet prompted you for a reply.
  • Fixed an issue where after voice recognition, the screen would stay on.
  • Added an option to have notification text stripped of urls when they are detected.
  • Removed preferences, rather than disable them, when they shouldn't be visible because the user cannot use them.
  • Fixed an issue where the app fired off notifications late.
  • Added an action to the notification in the status bar to read the last message (Android 4.1+ devices only) ...
  • Updated logic used by internal Gmail IMAP client for accessing labels (use IMAP list versus deprecated xlist when discovering labels).
  • Fixed an issue with the default value of the voice prompt timeout that caused errors for some users.
  • Added the ability to name your preference backups. These named backups should be easier to use in our new Locale preference plugin!
  • Removed the check for a data connection when doing voice recognition on JellyBean devices since offline recognition is available (
  • Fixed an issue with the "start with bluetooth" app logic.

Version 2.5.5

  • Added text free widgets.
  • Fixed an issue with the embedded "Like on Facebook" functionality that caused it to pop up every time you opened the app.
  • Fixed user reported exceptions.
  • Improved the automated backup handler.
  • Fixed an issue with our AquaMail plugin that prevented messages from being read aloud unless they were in the Smart Inbox.
  • Attempt to address an ANR issue caused when loading "Other Apps".
  • Added blacklisting to calendar reminders based on words in the event.
  • Add blacklisting of specific calendars too! This feature use Android API level 14 or Android 4.0+).
  • Added a notification delay option for calendars.

Version 2.5.4

  • Put the labels back on the widgets (Rollback); For those that enjoyed the text free widgets, I will include new ones in the next release.
  • Updated the "Other Apps" service to apply shorthand entries to service name.
  • Fixed user reported issue with What2SayPreference that resulted in the app crashing when selecting a token.
  • Updated internal Facebook library.

Version 2.5.3

  • Fixed a runtime exception, "Invalid int 'OS'", as reported by a user.
  • Fixed an issue on JellyBean that caused the screen to turn on for every announcement.
  • Fixed various user reported issues (thanks for reporting them, and keep them coming!).
  • Removed the labels from widgets.

Version 2.5.2

  • Added the ability for the app to use the Android Backup Service.
  • Fixed an issue with the caller id customize text view blowing up on invalid user input.
  • Attempted to resolve "ClassNotFoundExceptions when unmarshalling ..." as reported by users.
  • Attempted to resolve a text to speech runtime exception that occurs occasionally when ending a notification.
  • Fixed an issue with Gmail label filtering and use of the system labels.
  • Tweaked the Mute/Voice reply widgets so that the text can be fully viewed.
  • Updated Italian translations (thanks to Xelabug).

Version 2.5.1

  • Updated the accessibility service.
  • Optimized when mute widget logic and updated the icons.
  • Fixed an issue where the revert key in the "What to Say" cleared everything.
  • Added AquaMail and Other apps to the locale (& tasker / probeez) plugin.
  • Added the ability to turn the screen on when using the Shake to mute functionality. Some devices, like the Galaxy note 2 require this in order to be able to function properly.
  • Fixed an issue with label filtering.    If you use this feature, please re-add any filters you where using.
  • Added the ability to better detect silent mode on Android 4+.
  • Added AquaMail and the "Other apps" notification types to the widget.  
  • Updated the widget to make it configurable so users can determine widget content.
  • Updated the widget to make it re-sizable for those on Android 3+.
  • Updated contact lookup library to address some user reported issues.
  • Require yet another permission to solve an issue on Android 2.1 & 2.2 where users could not select a valid Gmail account from within the app.

Version 2.5.0

  • Fixed user reported issues with "What 2 Say" preference views.
  • Added Russian and Slovakian to the languages we can auto-detect. 
  • Fixed an issue where toggling an account in K9, Kaiten and AquaMail didn't start the listening service.
  • Fixed a user reported issue with voice prompts/response that resulted in app failure.
  • NEW!
    • Added AquaMail Support!
    • Added the ability for the app to read out status bar messages (notifications with scrolling text only supported at this time).

Version 2.4.1

  • Updated the Customize Text  user interface to make it more user friendly.
  • Updated the Gmail account chooser to make it more user friendly.
  • Made changes to how the Gtalk feature works to hopefully improve performance and reliability.
  • Fixed: Mute widgets didn't work well (they were very hard to press).
  • Fixed some issues for those international users that could not utilize the talking Gmail feature in the app.
  • Fixed an issue where voice reply did not work on some devices if the screen was locked.

Version 2.4.0 &

  • Fixed the reverse lookup feature for those on Android 2.1.
  • Added OAuth2.0 support for Gmail access so that you do not have to enter a password.
    • Added support for the new Gmail 4.2 update.
  • Fixed an issue where orientation changes while performing reverse lookup would result in a crash. NOTE: You may have to reinstall the app (uninstall followed by reboot) from the market if nothing is being read out to you. To enable OAuth2 authentication with Gmail, just re-enable any Gmail account you may have.


  • The last released solved a force close issue, but the widgets seemed to have disappeared if you removed them from the home screen. This has been solved too.


Fixed: Widgets were causing the app to force close.

Version 2.3.5

  • New Slovak support (Thanks to Peter Jurik & Martin Jurik; unrelated I think!).
  • App source code optimizations.
  • Fixed some outstanding bugs and made the app more robust.
  • Use Voice recognition to prompt user that a message has been received and if they want it read out.
    • Headset only option of the above.
  • Customize the "What is your response" message for SMS voice reply.
  • Added Gmail label filtering so that only messages with a certain filter will be read out.
  • Updated the widgets (on some devices they took up too much screen space and looked funny).
  • Updated the reverse lookup feature as it was not working on some newer devices.
  • Log to a file now so that users can more easily send logs to me to help troubleshoot problems.
  • Fixed voicemail notifications feature as it wasn't working for all users.
  • Fixed an issue with the screening widget where you could not add contacts to screen on devices without a menu key.

Version 2.3.4

  • Add mute ringer to lower volume and remove the mute threshold on the option.
  • Added the ability to not have to confirm a voice reply response.
  • All shake to mute preferences had "mute ringer" associated with it; removed it.
  • Option to not use a headset microphone when using the voice reply feature ...
  • Added a global option that may increase compatibility with in-car bluetooth.
  • Added Phone & SMS/MMS Whitelisting capabilities.
  • Turkish language updates (Thanks Mehmet Giritli).
  • German language updates (Thanks to Ronny Matthes).
  • Shorthand mapper fix.
  • Improved voice reply service.
  • Fixed user reported bugs.
  • Fixed issue where "Screen On" wouldn't work on some devices because of the keyguard.

Version 2.3.3

  • Fixed an issue where if your "Lower ringer volume" threshold was 25 or less, the ringer muted until call was answered or ignored. This issue was important enough that I deviated from my regular release schedule. Barring any other nasty issues, next update will be in September!

Version 2.3.2

  • Fixed an issue were the ringer volume was not obeyed while talking. Sorry!

Version 2.3.1

  • Added the ability to read out a callers name & number in the same notification.
  • Updated the text to speech libraries for ICS.
  • Now when you enable Gmail or K9 / K10 notifications through our preferences, you are automatically taken to the accounts configuration section.
  • On Certain ICS devices and all Jelly Bean devices, the app incorrectly notified you of an incorrect text to speech installation.
  • Updated the "What 2 Say?" customization dialog.
  • Ability to manually perform reverse lookups for listed phone numbers (this feature is dependent on location and is accessible via the menu of the app).

Version 2.3.0

  • Ability to recompose a message created with voice recognition.
  •  Facebook integration.
  • Fixed issue with persistent notifications for SMS read on demand / reverse lookups.
  • Fixed Swedish language issue with SMS voice reply.

Version 2.2.3

  • Fix error reported by user that basically made voice reply unusable. It would prompt you to reply and exit almost immediately. Thank you for reporting this to me Maurice!

Version 2.2.2

  • Added the ability to select which languages you would like to auto detect. This should improve the speed of auto detection, since we only detect the languages you select, versus all of them!
  • Changed "Compatibility" to "IMAP" under Gmail settings to make it more clear.
  • New method used to 'pause' media player while talking.
  • New voice reply mute widget.
  • Fixed user reported bugs.

Version 2.2.1

  • Calendar bug: Reminders for events due in hours were off by one hour.
  • Voice Reply bug: didn't time out properly, resulting in the app to hang.
  • Support for Voice reply through bluetooth headsets for those using Android 4.0+.
  • Reverse lookup of unknown numbers now works when you screen calls.

Version 2.2.0

  • ICS fixes:  
    • Made it more stable when using bluetooth.  
    • Attempt to determine when SVOX crashes and to work around it when possible.
  • Updated the K9 account chooser.
  • Attempted to address some localization issues.
  • Support added for simplified chinese.
  • Fixed an issue where the locale plugin didn't toggle the app properly.
  • Headset only for different notification types. Please reboot the phone after installation (if you use ICS).

Version 2.1.1

  • Bug fixes:
    • Only do voice reply when connected to the internet.
    • 4G networks were not properly detected when checking for a data connection.
    • Removed whitespace from character filter
    • "Screen on only" prevented users from being able to read SMS messages on demand.
  • Additions
    • Calendar now use character filter and dictionary.
    • K9 / K10 account whitelisting; Only accounts that you have enabled will have their messages read out!
    • Unknown numbers that have been looked up successfully now post to the notification bar for you to see.
    • New Gmail option to just read new starred messages.

    Version 2.1.0

    • Bug fixes:
      • Preference restoration sometimes caused a force close.
      • Voicemail notifications do not obey quiet time.
      • Button label for dictionary editing was mislabeled.
    • Russian language updates.
    • French language updates.
    • Updated the SVOX Voice listings.
    • Ability to read out SMS/MMS messages by clicking icon.
    • Lang auto detect not performed if babel enabled for contact.
    • Ability to perform voice reply to contacts only.

    Version 2.0.3

    • Added the ability to choose which notification icon to use.
    • Added some new required ICS permissions for bluetooth.
    • Fixed the bug that basically prevented you from starting the app again after Quitting the app.

    Version 2.0.2 Rebuild of 2.0.1 for those having problems with the last update. Version 2.0.1

    • Updated layouts and added an action bar.
    • Locale plugin updates for Android 4.0+.
    • Fixed user reported exceptions.

    Version 2.0.0

    • Updated the Manifest so that tablet users can find the app on the market.
    • Preference display bug fixes.
    • Fixed bluetooth problem for ICS.
    • Added:
      • SMS voice reply and some configurable options.
      • The ability to ignore messages when the screen is on.
      • The ability to attempt reverse lookups for unknown (not private) numbers.


    • Added ability to support "2 step verification" for Gmail.
    • Fix: Don't retrieve deleted messages.
    • Fix: Gmail contacts had funny characters in their names.
    • Czech and German language updates.
    • New features:
      •  "Babel" allows you to specify a language that a particular contact uses. If a voice engine with that particular language is available, then Enhanced SMS & Caller ID will load it.
      • Language Auto detection allows you have the language of the incoming messages detected and the appropriate voice engine is loaded (if available on your phone).


    • Updated Gmail support!
    • Fixes for user reported bugs.


    • No longer allow app installs on SD card. This was required for compatibility with Locale 2.0 and was problematic anyways.
    • Updated the Locale plugin.
    • Bug fixes.


    • Bug fixes to address user encountered force closes.
    • Enhancement: dictionary updated and allows case sensitive word mapping.
    • Enhancement: Ability to filter email and have spoken notifications for only those senders you specify.
    • Fix: When setting the language to Dutch, nothing would happen.
    • Added the ability to check if the user has TTS voice data installed and then prompt them to install it if they don't. This should cut down on the number of users saying that the app doesn't work when in fact their phone has shipped without Text to speech.


    • Bug fixes to address force closes.
    • Fixed bug in "lower ringer" bug in quiet time.
    • When filtering messages of certain characters, we exclude the space character.


    • Added the ability to map ":-)" in the dictionary.
    • Updated the framework to prepare for new upcoming features.
    • Added the ability to apply filtering of characters from caller names.
    • & are basically the same, but with some more changes to the shorthand dictionary logic (sorry, it turns out that other users use this functionality a lot more than I do and they managed to find unexpected behavior instantly; this had to be fixed right away so that other users don't experience issues too!).


    • Option added to mute caller ringer & notification by putting the phone face down on new incoming call.
    • Option to not toggle pause.
    • Email senders names now filtered for user defined special characters.


    • Fix: SMS didn't obey the firstname/nickname preferences.


    • Gmail Problems: Click here!
    • New option to lower ringer volume for talking caller id (when no headset attached to phone).
    • Firstname / Nickname are no longer mutually exclusive.
    • Enabled ability to save app to SD card (please see FAQ).
    • Gtalk voice notification bug fixes.
    • Kaiten mail support (K9/Kaiten use interchangeable settings).
    • Fix: Use 24 hour clock for users using 24 hour clock.


    • Bug fix: Long SMS messages came in as separate messages rather than one long one.
    • Bug fix: Some languages did not read out properly due to errors in the translations.


    • Added firstname, nickname options to Google Talk.
    • Made dual speak a global option available in Application Settings.
    • Added option to filter Gmail messages from unknown senders.
    • Added Portuguese translations.


    • Source code optimization.
    • Bugfix: Some users with exchange contacts had name read out as "Last name, First name".
    • Added new SMS option to customize the message for unknown senders.
    • Added option to speak caller id notifications a user specified maximum number of times.
    • Initial support added for Google Talk.


    • Minor optimizations.
    • Made new A2DP caller id setting configurable (Aggressive) because some previous users had problems with it.
    • French language update (Thanks to Olivier P.)

    Version & (redo)

    "What to say?" messages got corrupted during the build and resulted in force closing of the app. Sorry.

    • Added MMS support.
    • Added notifications for the message waiting indicator (only works if your carrier supports these notifications).
    • Added Dutch translations.
    • Bug fix: When starting from boot with start from headset on.
    • Improved caller id bluetooth headset support.


    • Updated the mute widgets text color to white.
    • Fixed error on some Motorola phones that caused a force close when you try to filter sms contacts (thanks for reporting the error!).

    Version 1.99.9

    • Fix: Headset media volume stream was not syncing properly.
    • French language update.
    • Mute widget's state is reflected in its title.


    • Added the ability to specify a notification delay for SMS messages.
    • Added a "first name only" option for caller id and SMS notifications.
    • Added a speech delay option for caller id and email notifications.
    • Added a new widget that toggles voice announcements.
    • Added dual speak for wired headsets.


    • License bug fix (sorry to everyone that had problems).
    • Force close fix (again, sorry; switched to new build tools and didn't notice the problem until some users pointed it out to me).
    • Fix: SMS messages not looped properly when starting and stopping the app on connection of a headset.

    Version &

    • There was a problem with building this release, so make sure that your update is to version "v1.99.8.14 re-release". Sorry!
    • Shorthand dictionary was not being applied to the Subject of email messages (in some configurations).
    • Increased the time allotted, from 5 seconds to 10 seconds, to hear the SMS notification sound.
    • Added ability to specify if you want to use in-call volume or media volume with your headset.


    • Added the ability to start and stop the app on connection of a Bluetooth headset.
    • French/Swedish language update.
    • Updated the preference menu.
    • Shorthand dictionary was not being applied to the Subject of email messages.
    • Fix: after submitting a translation update, the application would force close.


    • Completely updated the code behind the widget. You may need to replace your current homescreen widget.
    • Updated German translations (Thanks to Stephan Fuchs).
    • Added "What to say" to K9 mail.


    • Bug fix: Screening by contact was not working with some HTC (Thunderbolt) phones.
    • Added a preliminary plugin into Locale (and by extension Tasker).
    • Update the notification bar message when screening by contacts.
    • K9 email notifications now read message overviews.


    • Added the ability to toggle the voice notifications, on a per contact basis (Screen calls by contact), for phone calls and SMS messages. For phone calls, you can disable voice notifications and optionally mute the ringer.


    • Shake to stop voice notifications can now be shut off (on by default).
    • Multiple SMS with headset causes music to sometimes toggle pause.
    • Updated the tutorial that is accessible from the menu.
    • Updated the help documentation and moved it from the phone to my website.


    • Fix: 2 exceptions reported (for Czech language calendar and contact lookup).
    • Fix: Widget update (attempt to fix unresponsiveness).
    • Added a Spain Spanish localization (thanks to David Raigoso).
    • Added option to speak via the speakerphone and headset when using a A2DP bluetooth headset. 
    • Added some missing values for the Swedish language.


    • Fix: Some users complained that their labels would not load when the app was configured to speak Gmail messages (stuck at the "Loading Conversations" dialog). No longer the case.
    • Czech language update (Thanks for submitting changes).
    • Russian language update (Thanks to Sergei Federov).
    • Added ability to speak the incoming phone number type (i.e. home, mobile, etc.). Your "What to Say" setting needs to be reconfigured.
    • Some memory optimizations, especially if you hear 'Call from less than name greater than" (how to).


    • Spanish language update (Thanks for submitting updates).
    • Italian language update (Thanks to xj4devel). Please contact me if you would like to update the translations.


    • Removed some unused source code & fixed some minor bugs.
    • Added ability to just read the incoming calls phone number (and not the name of the contact).
    • Fix: When multiple Gmail messages were received, the music player would start.


    • Swedish language update (thanks to whomever submitted this translation!).
    • Gmail word count wasnt being read properly for new incoming messages.


    • Fix: During quiet time, messages received would turn the screen on. Now they don't.
    • Fix: No longer turn the screen on when reading messages.
    • Gmail read overview now allows user defined message size based on word count(defaults to 40 words).
    • Added an option to disable the queuing of SMS messages received while on user is on a phone call sounds.
    • Fixed a music bug that occurred when multiple messages were received in quick order.


    • Added ability to customize the Gmail notifications. Do let me know what you think about this feature or if you encounter any problems.
    • Added the ability to strip out user defined characters from messages.


    • Fix: When restoring preferences, Text to speech (TTS) was not being initialized properly and voice notifications failed until phone was restarted.

    Version 1.99.8

    • Fix: When an event was triggered for the calendar and there is more than one event to announce, sometimes only the first event was spoken and the rest were ignored.
    • Updated the shake thresholds (please re-adjust them as your previous value is probably too sensitive).
    • Fix: Gmail listener would encounter an error and die silently while checking its state.


    • More Gmail optimizations.


    • Updated the Gmail functionality.


    • No longer mutes the ringer when using an A2DP headset (although it does have better results), and I did add the option to do so.
    • Some Gmail messages received were not being read if they had an empty subject or the sender was unknown ... now they are.
    • User submitted changes for the Swedish/Russian language translations (Thanks!).
    • Further optimized the Gmail listener.


    • New shake to mute voice notification (& optionally the ringer) functionality, especially for phones running android 2.3+ since silencing the ringer no longer silences the talking caller id. This feature works only when you are not using a headset (for now).
    • Czech translation user update.
    • On restore of user preferences, widget did not update properly to reflect configured settings.
    • Hungarian translations added (thanks to Krisztian).


    • Updated the logic behind the Gmail mail to self because some messages were not getting through.
    • FIX: Calendar events with an empty event name had the name set to be 'null'
    • Updated the Czech translation thanks to a user submitted update.
    • Updated the widget; Widget becomes unresponsive and then needs to be re-added for it to work again (on Android 2.3+).

    Version 1.99.7.

    • Added the ability to save/load your preferences (provided you have space on your SD card). You can access this through the menu.
    • FIX: Some phones were not properly toggle pausing the media player when SMS messages were received and there was a user defined read count greater than 1.
    • Added the ability to allow the user to change the applications language. Available from the "Other Options" menu.
    • Fix: Gmail notifier only announces new messages (those marked as unread).
    • Added the ability to notify of Gmail messages that are sent to self.
    • Added the ability to suggest changes to the translations (available through Other Options).
    • FIX: tried to fix the NullPointerException that someone got using the Shorthand editor. Not sure if it has been fixed, because I don't know how to replicate it.
    • Updated the Other Options menu.
    • FIX: Calendar event locations were always read, regardless if you had configured them to be.


    • Option added to read calendar event locations.
    • Added ability to perform a check to determine if users headset is A2DP compatible (from Other Options menu).
    • FIX: CID over call waiting caused the phone to mute all sounds (Thanks to Steve M for pointing this out).
    • Next release, baring any more bug reports or feature requests, will allow you to customize the Gmail notification message. After that, I want to get voice replies working (first for SMS messages and then hopefully for email).


    • Added some more localizations.
    • No longer keeping track of changes internally. The Changes menu item now goes to the website.
    • Updated the documentation available through the Help menu item.
    • Small change to Preferred Media Player option; Please make sure to set it up again!
    • Fix: When ecid was shutdown, we didnt clean up our K9 mail listener.
    • Thanks to Ondřej Lieskovský for correcting the czech translations
    • Fix: some calendar events were repeated multiple times.
    • Next release, baring any more bug reports, will allow you to customize the Gmail notification message. After that, I want to get voice replies working (first for SMS messages and then hopefully for email).


    • Bugfix: The TTS engine was crashing for some users, since I made the switch to another engine. Now, unless you are running Android 2.1 or lower, you should be using the default, stable, android TTS library.


    • Re-release of a previous version because some users seem to have a stale version and cannot obtain the latest version. This upgrade is not necessary if you are not having problems. Thanks!


    • Fix: Gmail listener wasn't being enabled properly if you enabled/disabled it after starting the app.
    • Fix: Receiving non caller id related voice notifications sometimes caused all other sounds to be silenced.


    • Potential support for pausing Pandora (and maybe all other media players) while SMS/Gmail/K9/Calendar notifications are played through A2DP headsets. Make sure to set the preferred media player in the "Other Options" menu!


    • Updated the Quiet time calculation.
    • Cleanup some of the K9 source code and activities that are not going to be implemented.
    • Added the ability for Gmail to read the whole incoming message.
    • Updated the UI a little bit; Gmail and K9 mail are now sub preferences of the Email category.
    • Added K9 mail to the widget.
    • Bug fix: K9 enable/disable was a bit buggy.

    Version 1.99.7 (& & - Sorry for any problems you had)

    • Added initial Czech translations, using Google translate. Sorry if the translations offend anyone!
    • Added initial K9 support (preview of some things I want to do, but not sure if they make sense just yet).
    • Option added to have the phone vibrate when the phone is connected to a bluetooth headset and a phone call is received.

    Version 1.99.6

    • Fix: Allow users to use SVOX voices on Android 2.1. This does require that the user install the TTS Extended Service (
    • For users running Android 2.1, if TTS Extended Service is installed, then we show updated TTS settings menu.
    • Changed how the Only use dock speaker works. Seems a bit buggy on my phone (undock phone and headset doesn't seem to work), if this is the case with others, I will remove this functionality.

    Version 1.99.5

    • When Gmail notifier fails to run properly, exceptions are handled and system tried again, repeatedly... Now I write to the log a message saying that there are problems and stop listening for new Gmail messages.
    • Bug fix: Preferred media player was not properly pausing the correct media player (Sorry! Make sure that you set it again to reset the value).
    • Sorted the More Voices listing to make them easier to look through.

    Version 1.99.4

    • Some people didn't like hearing their default notification (the chirp) when SMS messages were received, so I added an option that enables/disables them.
    • Added a shortcut to the TTS Settings to the Other Options menu.
    • Added an option to always use the dock's (car or desk) speaker, regardless of whether or not a bluetooth headset is connected.


    • Updated the More Voices links.
    • Added a log message in the instances where volume is muted and a notification is received.
    • FIX: the very next message after Quiet Time ended, caused the phone to stay awake (and drain your battery).

    Version 1.99.3 &

    • Quiet time check didn't handle certain time intervals properly. Not sure how I messed up something as simple as a time interval check. Sorry!

    Version 1.99.2

    • A user complained that their notification chirp was not being played (voice notification overrode it) when SMS messages were received. Added a brief delay to allow the chirp to be heard before reading SMS messages are read aloud.
    • FIX: When some users bought SVOX voices they weren't being utilized properly in code (this happened for some, but not all, users).
    • Added ability to pause HTC music player; You now get to choose the media player to pause in the "Other Options" menu. Defaults to the Stock media player.
    • Added ability to pause Astro Player Beta; You now get to choose the media player to pause in the "Other Options" menu. Defaults to the Stock media player.
    • Optimized quiet time checker

    Version 1.99 & 1.99.1 & (caching problem led to multiple releases)

    • Updated the code that starts the app on system boot to allow the system to first fully boot up and then start ecid
    • Gmail notifications needed extra permission for Android version 2.1 (Thanks to Tom R. for finding this out)

    Version 1.98.5

    • New feature: Quiet time (available from Other Options menu) wont provide voice notifications for user set time interval.
    • Calendar button added to widget
    • Widget layout updated and icons re-arranged.
    • FIX: ANR timeout when enabling Gmail notifications.

    Version 1.98.4

    • Removed SIM card contact look ups (took too long and hardly ever returned the correct result). I don't see ecid supporting SIM card contacts in the near future.
    • Updated the calendar notifications (Chris L. pointed out that events that were past due had an inconsistent notification).

    Version 1.98.3

    • SIM contact lookup was not being done for incoming SMS messages.
    • FIX: When TTS data is not installed, a dialog was supposed to pop up, but an exception occurred instead.
    • Added the ability to read Google calendar event notifications (please send me specific comments so i can improve this feature).

    Version 1.98.2

    • Updated the status bar message to reflect gmail voice notifications
    • Added a persistent flag to our application (Attempting to fix problem discovered by Christopher L)
    • Some code optimization for the apps activities (some source code went about things in a round-about way ...)
    • Thanks to Brad for figuring out that not all phones (aware of Samsung phones) running android 2.0+ have TTS installed; Added a Dialog message when TTS does not initialize properly.
    • Phasing out my Headset listener because bluetooth headsets that are not compatible with the A2DP profile caused the app to not speak (because the app assumed a headset was plugged in).
    • Added an attempt to look up contacts from SIM card if incoming caller/sms sender is not in your Google contacts

    Version 1.98.1

    • Fix: Widget didn't properly update its state when features were enabled and disabled through preferences (thanks to Christopher L. for pointing this out).
    • Addition: added a configurable pause delay for SMS messages (sorry it took this long).

    Version 1.98

    • Fix: When muting the ringer, sometimes the voice notification would speak to completion on first ring.
    • New: Added a homescreen widget for quick enable disable of key features.

    Version 1.97.10

    • Fix: When muting the ringer, sometimes the voice notification would speak to completion.

    Version 1.97.9

    • Bug fix: One person reported an NPE; shouldn't happen again.

    Version 1.97.8

    • Bug fix: SMS messages containing words with emphasis were being spelled out, rather than spoken as is.

    Version 1.97.7

    • Made my check for 'does contact have a custom ringtone' a bit more stable.
    • Bug fix: Updated the gmail notifier to avoid RejectedExecutionException (Thanks to Krista for bringing this to my attention and sending me bug reports).

    Version 1.97.6 (sorry for the second update in one day ...)

    • Bugfix: forgot to clean up the Gmail notifier when app shuts down (causing messages to be read >= 1).

    Version 1.97.5

    • Added an option to play custom ringtones, if they are defined, in lieu of speaking.

    Version 1.97.4

    • Added the ability to have the gmail notifier read message overviews.
    • Explicitly show user that gmail notifier uses 'shake to stop' feature (if enabled).
    • Gmail notifier uses short hand editor for message clips (if enabled).

    Version 1.97.3

    • Bug Fix: java.lang.NullPointerException at
    • Code optimizations and cleanup
    • Added preliminary Gmail support

    Version 1.97.2

    • Updated the SMS shorthand logic so that you don't hear things like 'single quote', etc.

    Version 1.97.1

    • Updated the SMS code; threaded the processing in case users receive many messages in one go so that their phones don't timeout.
    • Updated the documentation.
    • Added licensing (if you have any problems with this, let me know asap!).

    Version 1.97

    • Redeploy: Some users reported that they could not upgrade to version 1.96.

    Version 1.96

    • Fix: java.util.NoSuchElementException as reported by user (guessing that the app 'force closed')
    • Fix: when hiding icon, actually hide it completely (there was an empty spot left for it before).
    • Addition: Added a shorthand dictionary that maps shorthand words to their meanings for incoming SMS messages.

    Version 1.94

    • Fix: Caller ID over call-waiting was not correctly being played through the headset.
    • Fix: Call waiting over caller id caused the phone ringer to mute indefinitely over a2dp headset.
    • Got rid of the extra space between screens in the Help page.

    Version 1.93

    • English localization went missing suddenly. Adding it back.

    Version 1.92

    • Fixed the default SMS message that is read. It, unfortunately, only read the name of the user. (Special thanks to Gene)

    Version 1.91

    • Removed some of the logging for the shake to stop feature because it was polluting the log file.

    Version 1.90

    • Fixed the SMS preference for nickname (visual bug).
    • May have fixed the caller id over bluetooth bug (i.e. made it less flaky)
    • Fix: Log option was not persistent
    • Fix: SMS messages received at the same time had the first message read and the rest ignored.

    Version 1.89

    • Fix: user reported force close (report sent to me).
    • Added the ability to enable the internal logger. This can be useful when trying to determine why the app is not working as expected.

    Version 1.88

    • Fix (hopefully): On Samsung Moment, caller ID notification doesn't loop properly.

    Version 1.87

    • Fix: When a text message from unknown person comes in, phone number was read as large number instead of as individual digits.
    • Fix: Caller id over a2dp bluetooth profile now works; well actually its a bit flaky. Please let me know how it works for you. I am continually trying to get this to work better
    • Added option to have caller id notifications while in call
    • Updated the user documentation.
    • Added an option to have a contacts nickname read if and when it exists
    • Added an option to specify what to say for incoming text messages

    Version 1.86

    • Bug fix: when screening unknown callers, nothing was screened unless private callers were also screened
    • Added a Shake Sensitivity option so that you can specify the value that works for your phone
    • Bug fix: when connected to bluetooth A2DP headset, sms notifications now play through headset (working on call notifications)
    • Added option to read just the SMS senders name

    Version 1.85

    • Updated the preferences UI to group similar preferences on the same screen. Should be much better than the mess released in version 1.84!
    • Updated the ongoing notification text to show the user what is being screened (sms messages, unknown callers, and/or private callers).

    Version 1.84

    • Added the ability to specify custom text for unknown/private callers.
    • Added the ability to ignore incoming SMS messages from unknown contacts.
    • Updated the preferences screen to group similar preferences together and to make the screen less overwhelming

    Version 1.83

    • FIX: When screening unknown callers, ringer became muted indefinitely (while speaking worked fine); Thanks to Andre Pope for finding and diagnosing this bug for me.

    Version 1.82

    • Added a Changes menu item that shows the last 5 application version changes.

    Version 1.81

    • FIX: Bug that causes system wide muting of the audio. Please let me know if you encounter this annoying bug still.

    Version 1.80

    • FIX: If music is playing (using the default music player), then pause the music, read the SMS message and then unpause the music.

    Version 1.79

    • FIX: Bug that causes audio to plays through earpiece. (unfortunately, now SMS is read over music if music is playing)
    • FIX: Bug that causes audio to be muted system wide.

    Version 1.78

    • FIX: If headset is plugged in before app is turned on, then headset is ignored.
    • FIX: Readings when plugged into headset sometimes caused reading through speakerphone. If music was not playing (for sms) and if music was playing (for phone).
    • Implemented SMS message queue. If user recieves a message while they are on the phone, then the message is queued and spoken within 60 seconds of ending the phone call.
    • Enabled (and re-did) the shake to stop SMS messages from being read (let me know what you think).

    Version 1.77

    • Streaming through bluetooth is not functioning properly. Updated the documentation for this app to notify users of this problem. 

    Version 1.76

    • Added the ability to hide the notification icon (user request)

    Version 1.75

    • Fix: logic behind closing app.
    • Fix: When starting from phone start, we start in the background and don't bother the user with our config screen.
    • Shake to stop your SMS messages from being read (disabled because of inconsistencies when screen is off).
    • Fix: removed memory references to internal listeners.
    • eCID tutorial now handles left and right flings; text color is white with black background.

    Version 1.74

    • Fix: When listening to music through headset, SMS messages were read over music. Music is now muted and SMS is then read.

    Version 1.73

    • Added a start on phone power up option.

    Version 1.72

    • Localized the tutorial.
    • Option added to modify the pause length between call notifications when looping caller id.

    Version 1.71

    • updated the ability to modify the call from phrase. is now the place holder for callers name.
    1. if phrase is 'Call from ' and Eddie calls, then the phone says 'Call from Eddie'
    2. if phrase is ' is calling' and Eddie calls, then the phone says 'Eddie is calling'
    3. if phrase is 'Call from ' and Eddie calls, then the phone says 'Call from Eddie' (appends caller name)
    • Localized the name for unknown callers
    • FIX: when a call is ignored (using the volume keys) and we are looping caller information, speech is silenced (as it should be)
    • Added a help menu item to explain configuration options

    Version 1.7

    • Added ability for user to edit/erase the 'Call from' phrase.

    Version 1.6

    • Added call screening; 
    • Ongoing notification is now multiline

    Version 1.5

    • New app name
    • FIX: SMS messages read while music playing mutes music, reads SMS, unmutes music

    Version 1.4

    • FIXES: 
      • When in a call and receive sms, sms no longer read during the call
      • SMS no longer read during incoming call notifications
      • Back button no longer closes app (need to use Quit menu item)
      • unknown callers (no phone number) had killed the app
    • Additions:
      • Through headset option now enabled (any headset (with or without mic); Bluetooth requires an A2DP Bluetooth device)

    Version 1.3

    • Changed min SDK to 5
    • Redid the configuration menu
    • Added looping to phone call notifications
    • Added play count for incoming SMS messages

    Version 1.2

    • Clicking on notification no longer spawns new eCID window.

    Version 1.1

    • Cleaned up the app
    • Bug fix: multiple notifications of same event no longer occurs

    Version 1.00

    • initial release
    Download it now from the Play Store!