I have always extended the life of my phones by flashing custom ROMs. Now I am curious about how this ROMs are built, developed and maintained.
Unfortunately, even though I am a developer with a good technical background, I could not find a good point to start learning.
Any advice?
Thanks!
Stay away from Samsung (their Knox security stuff and custom bootloader is nasty, Samsung deviates quite a lot from Android standards under the hood and their ODIN firmware flash tool isn't available publicly and cracked versions only for Windows), Xiaomi and Huawei devices (different partition layout, custom bootloader) and obscure Chinese no-name devices as for them you will have to do a lot of leg work regarding drivers or even basic tooling setup on your own.
For development, stay the hell away from Windows if you can, if possible also from macOS. You're best served with a Linux machine.