J'ai des ordinateurs Ubuntu et un téléphone Android. Je ne comprends donc pas pourquoi le gestionnaire de mise à jour par défaut d'Ubuntu et de Google Play sur le téléphone ne met pas à jour les versions existantes des applications en calculant la différence entre elles et les nouvelles versions. Je suis certain que c'est également le cas avec d'autres systèmes d'exploitation (c'est pourquoi cette question n'appartient pas à Ask Ubuntu ou aux passionnés d'Android)
Considérons, par exemple, la dernière mise à jour (une version mineure) de Google Maps (à compter du 18 avril 2012). La section "Quoi de neuf" indique qu'elle inclut une correction de bogue critique. Il est prudent de supposer que beaucoup de code n'a pas été modifié, et pourtant, lorsque vous mettez à jour l'application, celle-ci télécharge plus de 6 Mo, comme s'il s'agissait d'une nouvelle installation.
Pourquoi les serveurs de mise à jour ne peuvent-ils pas calculer la différence (à la git) avec les versions installées et envoyer uniquement la différence? Est-ce vraiment difficile de faire cela avec toutes les versions? La bande passante économisée ne serait-elle pas une motivation majeure?
modifier 6 déc. 2016: Google vient d'annoncer qu'il utilisera un correctif fichier par fichier pour les mises à jour d'Android APK - Enregistrement des données: réduction de 65% de la taille des mises à jour des applications