For rom devs only!!
If you include it in your rom please give credit by linking to this thread. Thanks
It'll be a bit hard to automatize it because the code is obfuscated on some devices so if the guys in China add or remove one member or method all the names will change.
I've tried to make the implementation as easy as it can be so I moved all the related code to a separate class you need to add to ContactsProvider and just replace one method of one of the existing classes there to use the new code.
You need to decompile ContactsProvider.apk, go to smali/com/android/provider/contacts/t9 and open T9Utils.smali (f.smali or h.smali when obfuscated), there you will find a method ".method public static formatCharToT9(C)C" (or ".method public static b(C)C" when obfuscated) and replace its content with the below:
Code:
.locals 1
.parameter "c"
.prologue
.line 5
invoke-static {p0}, Lcom/android/providers/contacts/t9/T9MultiUtils;->formatCharToT9(C)C
move-result v0
return v0
All that remains to do is to copy the attached smali file T9MultiUtils.smali to the same folder.