J'ai cherché une réponse à la question de savoir comment les entreprises de téléphonie mobile et les opérateurs obtiennent leur image de marque comme l'animation de démarrage sur un appareil. Est-ce qu'ils font la même chose sur toutes les roms comme aller sur /system/media
et remplacez le bootanimation.zip
fichier ? Comment peuvent-ils faire cela à grande échelle ? Il doit y avoir un autre moyen.
Réponses
Trop de publicités?Ils n'ont pas à changer la ROM de chaque téléphone à la main. Ils ont une relation avec le fabricant du téléphone, de sorte que la ROM personnalisée de l'opérateur est installée sur les téléphones à l'usine. Cette ROM personnalisée peut inclure l'animation de démarrage, les bloatwares, les paramètres (par exemple, les APN) de leur réseau. Ces téléphones ont souvent un matériel légèrement modifié : la coque extérieure porte le logo de l'opérateur ou est d'une couleur "exclusive" différente.
Ces modifications spécifiques au transporteur sont intégrées au code source et sont automatiquement incluses dans le processus de construction par l'intermédiaire de l'outil de gestion des modifications. système de construction pour compiler le code source et les ressources dans une image d'usine (ROM sous forme de fichier ZIP flashable ou tout autre format utilisé pour la distribution) ou une mise à jour du logiciel.
HTC a publié une infographie il y a quelques années, illustrant pourquoi les mises à jour de logiciels prenaient autant de temps.
- Google fournit le code source à HTC. HTC évalue les exigences de la nouvelle version d'Android.
Google publie donc le code source et les fabricants évaluent lesquels de leurs appareils seraient capables d'exécuter le nouveau logiciel et dans quelle mesure il serait rentable pour le fabricant de développer et d'expédier la mise à jour du logiciel.
- HTC affecte des personnes et des ressources pour soutenir le développement de la nouvelle version du logiciel [ ].
- HTC commence à travailler avec chaque opérateur pour définir la portée des modifications de l'opérateur pour cet appareil, y compris les applications, les services et autres exigences.
- HTC intègre les modifications apportées au code par les transporteurs.
Au point 6, les fabricants comme HTC affectent du personnel à différents travaux, comme la compatibilité des appareils avec le nouveau logiciel, mais développer également de nouvelles fonctionnalités . Ce qui, dans le cas de HTC, conduit à une version d'Android pas vraiment à la sauce AOSP, mais à une version à la sauce HTC.
Dans un premier temps, vous vous demanderez probablement pourquoi un fabricant confie à des membres de son personnel la tâche de travailler avec des transporteurs au point 7. Le fabricant dépense beaucoup de ressources pour créer sa propre version d'Android, mais quelqu'un d'autre a son mot à dire ? En effet, pour le fabricant, un opérateur est un client ayant des exigences particulières, qui achète de grandes quantités et la plupart des fabricants mesurent leur succès en vendant de grandes quantités. Ainsi, le fait d'affecter et de payer quelques personnes supplémentaires pour aider les opérateurs à marquer les appareils afin de vendre davantage d'appareils par le biais de contrats avec les opérateurs (à ne pas confondre avec votre contrat avec l'opérateur) prend soudain tout son sens du point de vue d'un fabricant d'appareils.
C'est ainsi que différentes personnes issues de différentes entreprises, comme les ingénieurs logiciels, les responsables de l'assurance qualité, les responsables de l'exploitation du réseau et le personnel de marketing, se réunissent pour modifier le code source.
Le dernier point consiste à utiliser des superpositions et des mécanismes similaires pour maintenir efficacement le code source. Ainsi, vous auriez un appareil X et Y, ainsi qu'un transporteur A et B et les changements/modifications sont engagés en conséquence. Il suffit de demander au système de construction de créer des constructions pour toutes les combinaisons possibles. De cette façon, si les gens du marketing du transporteur A viennent avec une nouvelle bootanimation.zip
et les opérations réseau de l'opérateur B ont trouvé une faille dans la façon dont l'appareil X se comporte sur le réseau, vous apporteriez deux modifications, mais vous seriez en mesure de construire au moins trois nouvelles versions mises à jour (si vous ne découvrez pas que l'appareil Y est également affecté). Bien entendu, il s'agit d'une simplification excessive.
Vous pouvez télécharger le code source des ROMs personnalisées Android les plus populaires sur votre boîte Linux et l'essayer vous-même. Voici l'exemple de la Nexus 5 du CyanogenMod Wiki c'est presque la même chose pour tous les appareils jusqu'à ce que " Préparer le code spécifique au dispositif ". Si vous regardez les scripts shell qui suivent, vous aurez un aperçu de ce qui se passe.