10 votes

Pourquoi les mises à jour d'applications téléchargent l'application entière au lieu de seulement les "mises à jour" ?

Je trouve plutôt étrange que pour la mise à jour d'une application dans Android (ou même iOS) l'application entière soit téléchargée au lieu de seulement les "Updates".

La raison pour laquelle je trouve cela étrange est que dans Windows, lors de la mise à jour d'une application, seuls les fichiers de mise à jour sont téléchargés - et non l'application entière - ce qui est plus pratique car cela permet de gagner du temps et d'économiser des données.

Cela peut sembler trivial pour la plupart des gens, mais lorsque vous devez télécharger une énorme application juste pour un ajout minuscule de fonctionnalité/une correction de bogue, cela devient un vrai PITA.

Quelqu'un a-t-il une explication sur la raison pour laquelle ce modèle a été mis en place ?

13voto

bmdixon Points 8699

Pour autant que je sache, il télécharge uniquement les mises à jour (appelées "delta") sur Jellybean 4.1 et plus. Évidemment, l'installation initiale est l'application complète, mais les mises à jour ne téléchargent que les données qui ont changé par rapport à la version actuellement installée (c'est-à-dire le "delta" de celle-ci). Vous ne verrez rien de différent lors de la mise à jour de la plupart des applications, il semblera toujours qu'il télécharge l'application complète, mais sur certaines grandes applications, vous verrez si "sauter" des parties du téléchargement qui indique qu'il ne reçoit que le delta.

Engadget y AndroidCentral les deux ont des articles indiquant que le Play store fournit des mises à jour delta.

4voto

John Points 1506

En tant que développeur Android, j'ai pensé la même chose, c'était pour le moins frustrant parce qu'une fois j'ai oublié de changer une ligne de code, et il est sorti avec cette ligne erronée, ce qui a causé l'application de cracher des déclarations de journal à gauche et à droite.

Cette question a été posée sur SO, mais elle est également pertinente ici et je pense qu'elle doit être maintenue.

SO Question : https://stackoverflow.com/questions/18045290/for-mobile-app-updates-why-does-the-entire-app-need-to-be-downloaded-again

En tant que développeur Android, je dirais que c'est la façon dont le logiciel est emballé. Chaque application Android est emballée dans un fichier compressé appelé un .apk . Ce fichier contient l'ensemble du code, des fichiers de mise en page et des images utilisés pour faire fonctionner l'application. Il est assez difficile de mettre à jour une partie seulement d'un fichier, surtout lorsqu'il est compressé et que le développeur a activé des fonctions de sécurité comme ProGuard, il serait pratiquement impossible d'appliquer un correctif.

Je suis sûr que Google avait également des raisons de sécurité pour ne pas autoriser les correctifs. Les correctifs de code ont tendance à laisser des failles de sécurité et des vulnérabilités inattendues.

-1voto

Amit Modak Points 29

Fondamentalement, le fichier de package d'application Android (*.apk) est créé une fois que le code de l'application est prêt à être publié, Ce fichier est créé après la compilation, la construction et le processus de conversion DALVIK,

Ce fichier contient toutes les ressources, c'est-à-dire les images, le son, les mises en page et les classes,

Et en ce qui concerne Windows, le cadre .NET et le cadre Linux fonctionnent tous deux de manière différente...

Si vous voulez remplacer uniquement certains codes de l'application, vous pouvez le faire dans Android, mais pour des raisons de sécurité, vous devez signer cette application à nouveau

Ce que fait DALVIK est un processus irréversible, donc si une nouvelle fonction est ajoutée, comment l'ancienne version y aura-t-elle accès sans le savoir ?

C'est pourquoi il faut mettre à jour toute l'application pour qu'elle puisse fonctionner correctement

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X