As I answered that it could be possible, there is almost no chance to add it to a close backlog…
And by the way, why would he want to do that? Font is Font, Locale is Locale, there is no real point to change the Font when changing the Locale. Maybe for different languages with different symbols, graphemes or writing systems but not much more. Let’s assume he just wanted to change the Font, using the Locale settings.
What do we want here:
Showcase an app with private data
Hide the text from the app as it is private using an alternative special font
Don’t change the app source code
The easiest way will be to use an emulated rooted device (so we can do what we want, break it and trash it after the shwocase). We will use Genymotion. As an example showcased application, we will use Twitter. So we start here:
Then we download the desired font. Here, the Redacted Script Font will hide the text behind a beautiful scratch.
We will now use the functionalities of ADB (Android Debug Bridge) to communicate and modify the Android system fonts.
As Genymotion devices are already rooted, we will just remount the system partition in write mode:
Then we will replace the default system fonts Roboto (Normal, Light and Bold) by the Redacted ones.
In order to backup the existing font, we just rename them by adding .old at the end:
We now copy all the Redacted Light font in the system folder, with the Roboto Light and Thin fonts names:
and then, let’s restart the device
After the restart of the device, let’s reopen our showcased application, and Voila: