As some of you probably know, the SomcFontSelector.apk in the Japanese firmware for the latest devices is pretty useless to us. It has only 4 built-in fonts with no options for other languages and no possibility to create font packs, or anything similar. So... I coded one of my own.
I present you my own Font Picker (formerly, Font Selector). Completely remade in Android Studio. Supports specialized and very flexible font packs that are specifically made for this selector.
I also include some ready-to-use font packs and there are more to come, as well as a quick guide for creating your own font packs for this selector.
- Any device running Android 5.0 or newer. (May not work properly on devices with MediaTek SoC)
- Rooted + Custom Recovery
- Disabled Signature Verification (Patched compareSignatures in 'services.jar')
- (Android 7.0+) SELinux on Permissive Mode
Screenshots from my Xperia Z1 customized stock-based ROM, showing off the Biko font pack:
There are 2 variants with only one difference: a Universal one with a launcher icon, the other is for Xperia devices, and it doesn't have a launcher icon. Instead, a "Font" shortcut will automatically appear in your Settings->Display. And that's the reason why I kept the package name "com.sonymobile.fontselector" for this variant, because Xperia's Settings app checks if it's installed.
If the shortcut doesn't appear, flash the Universal variant. That will place a "Font" launcher icon instead.
Xperia: Font Picker (with a Settings->Display shortcut)
- Newer device than the ones below: Any firmware.
- Xperia Z3+/Z4: Any 32.x.X.x.x (Android 5.1.1+) firmware.
- Xperia Z2/Z2a/Z3: Any 23.5.X.x.x (Android 6.0.1+) firmware.
- Any device running Android 5.0+
Font Packs (by Dr. Death):
Font Packs (by Igor Eisberg & Metallijim): [Not maintained]
The font used in the screenshots, my personal favorite.
Your Own Font Packs:
- Download and extract this compilation: AdvancedApkTool-FontPicker.zip (Huge thanks to the creators of Advanced ApkTool and Apktool, makes life much easier)
- Browse to "AdvancedApkTool/3-Out/MyFont.apk".
- assets/fonts: Copy-paste here variants of a single kind of fonts (i.e. MyFont-Regular, MyFont-Bold, MyFont-Italic, etc)
- AndroidManifest.xml: Change the "package" from "com.mysite.myfont" to any package name you want (it has to be unique)
- res/values/strings.xml: Change the "font_name" from "My Font" to anything you want.
- res/xml/fonts.xml: Change all of the file names to the file names of your fonts (i.e. "MyFont-Regular.ttf" to "Rosemary-Regular.ttf")
- Go back to "AdvancedApkTool" folder and run "Advanced ApkTool.exe".
- Select "3 - Recompile Files", and then ENTER.
- Select "1 - MyFont.apk", and then ENTER.
- Select "4 - Recompile, Sign And Then Zipalign", and then ENTER.
- Press the Y key, and the ENTER.
- When the recompilation is complete, go to "4-Done" folder, rename "MyFont.apk" to anything you want and copy it to your phone.
- Install as any other APK.