After trying most of the solutions described in this thread, I accidentally found Calligraphy (https://github.com/chrisjenx/Calligraphy) - a library by Christopher Jenkins that lets you easily add custom fonts to your app. The advantages of his lib comparing to approaches suggested here are:
- you don't have to introduce your own overriden TextView component, you use the built-in TextView
- you can easily include the library using gradle
- The library doesn't limit your choice of fonts; you just add your preferred ones to the assets dir
- you not only get custom text views — all the other text-based Android compontents will also be displayed using your custom font.