Best case is source code, always. We will never get that for the m5 unless someone orders a ridiculous amount, and they will probably have signed an NDA.
This is the next best option, as we have the platform keys, and can sign system apps.
Hopefully this post doesn’t change that, I doubt the manufacturers know our forum exists.
What you need
apktool(I tested with 2.12.1)apksigner(from Android SDK build-tools)zipalign(from Android SDK build-tools)- Platform signing keys (
platform.pk8andplatform.x509.pem)
keys.zip (2.5 KB)
Decompile
apktool d name_of_app.apk
Make edits
Edit files in the name_of_app/ directory as needed.
Rebuild
apktool b name_of_app -o name_of_app_modified.apk
Align
Trust me on this one, a lot of trial and error.
zipalign -f 4 name_of_app_modified.apk name_of_app_aligned.apk
Sign
apksigner sign --key keys/platform.pk8 --cert keys/platform.x509.pem --out name_of_app_signed.apk name_of_app_aligned.apk
Your signed apk will be in your working directory as name_of_app_signed.apk.
You can now install the app as a regular update, replace with root, or rebuild the ROM with it.
Here is an example of the m5 dialer that I modded and then signed with the platform keys:
If you know what you are doing, having platform keys completely changes the game.