Android est un OS open Source. Chaque version est developpé en interne chez Google, puis ils publient les sources qui deviennent telechargeable par tout le monde. Il n'y a pas de gestion directe du materiel, les sources propose certaines fonction "générique" pour gérer le materiel, et les constructeur devrons greffer les leurs (en trés gros, android peut proposer une fonction "AlumeLeFlash" qui sera utilisée par d'autres fonctions, mais elle sera vide, c'est au constructeur de l'ecrire)
Donc en plus d'adapter Android a leur materiel, les constructeurs en profitent pour rajouter quelque fonctions, soit pour gerer du materiel specifique (exemple : le zoom optique des galaxy camera, gestion de l'interface physique des auto radio sous android, etc...), soit pour proposer de nouvelle fonction originale (le multi-windows des galaxy) ou une interface graphique customisée.
Mais les constructeur ne sont pas les seul à faire cela, et quelque groupe de codeur s'amusent a faire un peut de reverse ingeneering des portables pour pouvoir leur adapter leur propre version d'android. Ils sont généralement à la pointe du progrés et base souvent leur version custom sur les dernieres versions d'Android disponible.
Comme ces versions remplacent totalement la vesion qu'il y a sur le telephone, il faut impérativemetn avoir les droits administrateurs (droits "root" dans le monde unix) pour le faire, et donc totu d'abord intaller un petit programme qui va modifier le systeme pour le faire (d'ou le terme "Rooter" son telephone)
Il existe actuellement plusieurs custom Rom celebres pour Android, certaine ne sont que des androids pur et dur et leurs auteurs ne les font généralement que pour proposer des version d'android récente sur des telephone abandonné par leur constructeur ou dont le constructeur traine a mettre à jour le telephone. On peut aussi les utiliser pour virer la surcouche graphique que propose certain constructeur qui ne sont parfois pas une reussite du tout, et se retrouve alors avec un android pure souche.
Certain "Moddeur" vont au contraire trés loin dans la customisation en poposant des surcouches graphiques hyper sophistiqué, des optimisation en vitesse et mémoire occupée trés importante, et un gros tas de nouvelles fonctinalité (par exemple le support en natif de nouveau format audio/vidéo, de nouveau mode et de format de sauvegarde/encodage pour l'appareil photo/caméra, etc.
Parmis les mod les plus connu
- Cyanogen MOD, certainement le plsu celebre des MOD
- AOKP : Orienté "android pure souche"
- Paranoid Android : Android pure souche au premier abord mais avec nouveau de réglage de l'interfce graphique qui permet de customiser visuellement a l'extreme tout ce qu'on veut (on peut changer les icones, les couleurs, la transparence, la disposition d'un peut tout)
- LiquidSmooth : Orienté vers l'optimisation des performances et de l'occupation mémoire, de quelque gadget natif comme une lampe de poche directement accessible dnas la barre du haut, et d'un menu de gestion de profil de performance (qu'on attends pour Android 5 d'ailleurs...), et la capacité a faire plein de réglage qui ne sont normalement pas dispo dans un android de base.