In this chapter, we managed to introduce numerous features with little work. We learned how to produce a lean and quick user interface with the help of voice recognition and synthesis.
We started our journey creating a new way to store the user's presets, one that required refactoring for both activities and for
SensorThread temperature checking. We proceed with the first implementation of voice recognition and, to simplify our work, we created a generic activity class extended from the
Overview activities. This allowed us to abstract some common behavior, making it easy to call the recognition intent within different parts of our code.
As the last step, we prepared the voice synthesis manager to easily use the Android text-to-speech engine. Indeed, we use this component to provide feedback after the recognition process, when users are changing their settings and the current activated preset.
In the next chapter, we will add network capabilities to the Chronotherm application...