Connexion
Abonnez-vous

Google va diminuer le poids des mises à jour pour les applications Android

Mais il y a une contrepartie

Google va diminuer le poids des mises à jour pour les applications Android

Le 08 décembre 2016 à 07h50

Google a annoncé hier de nouveaux outils de compression pour réduire encore la taille des mises à jour pour les applications, qui peuvent parfois représenter un problème. Bien que les chiffres montrent l’efficacité de la méthode, elle ne se fera pas sans impact sur l’autonomie. Explications.

Il a toujours existé deux grandes méthodes pour mettre à jour un système ou une application, qu’il s’agisse d’une suite bureautique ou d’un jeu. On peut simplement compresser les fichiers complets pour les décompresser ensuite sur l’appareil et procéder par écrasement des données. Ou on peut au contraire réduire les différences à leur plus simple expression, le processeur devant alors exécuter des calculs plus importants.

Réduire toujours plus la taille des patchs

En juillet dernier, Google avait annoncé l’utilisation de l’algorithme bsdiff pour détecter et compresser les différences entre l’APK installé sur l’appareil mobile et celui présent sur le Play Store. Le gain annoncé était d’environ 50 % par rapport à la technique utilisée auparavant, permettant de générer des mises à jour plus petites à télécharger. Il y avait donc gain de temps et moins de pression sur les forfaits data, à moins bien sûr de le faire sur une connexion Wi-Fi.

Google en remet une couche, avec une nouvelle technique baptisée « File-by-File patching ». Cette fois, le gain est en moyenne de 65 % et peut même atteindre 90 % sur certaines applications. La création du patch passe par la décompression de l’ancienne et de la nouvelle application, toujours via bsdiff.

Les modifications sont cependant appliquées sur les données décompressées, avant qu’elles soient recompressées. Les signatures sont ensuite comparées pour vérifier que le nouvel APK formé sur l’appareil correspond bien au dernier disponible sur le Play store.

Une augmentation parfois significative du temps d'installation

On se rapproche donc beaucoup plus de l’intervention « minutieuse » avec un minimum de données envoyées. Ce qui engendre une charge supplémentaire pour le processeur, ce dont Google prévient d’ailleurs. Ainsi, sur des appareils récents, datant de 2015 au moins, l’étape de compression réclame en moyenne une seconde par mégaoctet. Un temps qui est loin d’être négligeable, et qui sera encore plus important sur des appareils plus anciens.

Globalement, Google indique que si la taille des mises à jour est divisée par deux, le temps d’installation est quant à lui doublé. L’éditeur indique que ces changements sont introduits pour économiser autant de données que possible. Mais l’introduction de ce mécanisme est étrange à une époque où les forfaits data ne cessent de grandir.

Car les utilisateurs, s’ils constatent un impact sur leur autonomie, risquent d’attendre systématiquement d’avoir à disposition un chargeur et un réseau Wi-Fi. Il se pourrait aussi que cette nouveauté s'adresse à des marchés plus spécifiques comme les pays en voie de développement, où les constructeurs de smartphones fondent de nombreux espoirs pour la croissance de leur activité dans les mois et années à venir.

Notez enfin que la technique « File-by-File patching » est open source. Elle fait partie du projet Archive Patcher, que l’on peut trouver sur GitHub.

Commentaires (53)

Vous devez être abonné pour pouvoir commenter.

Abonnez-vous
votre avatar

Peut etre un pas de plus vers un processus de maj plus importante des composants systeme.

votre avatar







jb a écrit :



Google ne fait plus d’update de son Nexus 6, 18 mois après son introduction en France. Pas un constructeur pourri, Google. 



Faut pas déconner. Windows arrive à mettre à jour des OS pendant 10 ans, mais pas Google?





Comme dit plus haut, le N6 aura bien la 7.1.1

Ensuite, comparer un OS desktop et un OS mobile me paraît bien cavalier







Dude76 a écrit :



Quel(s) constructeur(s) fait(font) un réel suivi des maj au-delà de 2-3 ans ?





Et surtout je dis pas que Google c’est des gentils ou qu’ils font des suivis suffisants, je dis juste que ce sont les consommateurs qui achètent donc c’est à eux de se chercher un constructeur (et sous-entendu l’OS qui va avec) qui correspond à leur attente

Si le support au-delà de 3 ans leur est nécessaire, ils choisissent en conséquence



Par exemple : l’iPhone 5, sorti le 21 septembre 2012, a reçu iOS10

(pas de procès en sorcellerie svp, je n’ai jamais eu de produits Apple)


votre avatar







manu0086 a écrit :



“L’obsolescence programmée”… alala quel grand terme à la mode! Mais qui n’a strictement aucun sens dans la high tech… L’obsolescence fait partie intégrante de la high tech depuis toujours, elle n’est pas programmée et n’a pas besoin de l’être.

C’est du niveau théorie du complot pour qualifier les choix techniques que vous ne comprenez pas… bref ça vole pas haut.







Tu lui expliquera a lui le choix technique incompréhensible:



youtu.be YouTubePour le reste t’inquiète pas on a bien compris le but de la manoeuvre…


votre avatar







Drepanocytose a écrit :



Peut etre un pas de plus vers un processus de maj plus importante des composants systeme.





Ils ont déjà des projets dans ce domaine, et il est plus que temps.


votre avatar

-JDG Star Wars-

ON S’EN BRANLE

ON S’EN BRANLE

ON S’EN BRANLE



Ce qu’on veut ce sont de nouvelles mises à jour, pas l’amélioration des existantes.

votre avatar







Olbatar a écrit :



Tu lui expliquera a lui le choix technique incompréhensible:



youtu.be YouTubePour le reste t’inquiète pas on a bien compris le but de la manoeuvre…





Euh il dit lui même que ce n’est pas de l’obsolescence programmée…

 

Pour le prix des accessoires remplaçables élevés, bah c’est du commerce… cela a toujours été ainsi que cela soit dans la high tech ou non. C’est aux consommateurs de faire leurs choix en conséquence.


votre avatar

En ce qui concerne le fait que ca utilise plus de batterie/temps, perso les mises à jour se font quand c’est en charge et sur wifi (donc le soir quand je vais me coucher). Ils peuvent prendre le temps qu’ils veulent <img data-src=" />

votre avatar







Vincent_H a écrit :



Ils ont déjà des projets dans ce domaine, et il est plus que temps.





Je sais.

Je me demandais juste si, techniquement derriere, les sujets n’etaient pas liés d’une certaine facon.


votre avatar

Probablement, ya rien techniquement qui les empêche de reprendre la même technique pour les màj d’Android. Sauf si à l’échelle d’un système l’étape de recompression est considérée comme beaucoup trop longue.

votre avatar







manu0086 a écrit :



Euh il dit lui même que ce n’est pas de l’obsolescence programmée…

&nbsp;

Pour le prix des accessoires remplaçables élevés, bah c’est du commerce… cela a toujours été ainsi que cela soit dans la high tech ou non. C’est aux consommateurs de faire leurs choix en conséquence.







Euh il dit lui même que c’est pour pousser a la consommation, soit la définition même de l’obsolescence programmée, d’ailleurs j’avais eu l’occasion de lui demander lors de sa FAQ s’il pensait que l’obsolescence programmée était un mythe ou une réalité….je te laisse regarder sa réponse <img data-src=" />


votre avatar

Trés bien pour moi au contraire ! Windows va faire pareil

&nbsp;

Franchement, il ne manque plus que Steam qui me bouffe une bande passante de dingue.

votre avatar







Olbatar a écrit :



Euh il dit lui même que c’est pour pousser a la consommation, soit la définition même de l’obsolescence programmée, d’ailleurs j’avais eu l’occasion de lui demander lors de sa FAQ s’il pensait que l’obsolescence programmée était un mythe ou une réalité….je te laisse regarder sa réponse <img data-src=" />





C’est TA définition. Je n’invite rien, il le dit lui-même donc tu n’as pas la même définition que lui pour commencer… c’est bête hein de le prendre comme référence pour sortir des conclusions différentes ? tu ne trouves pas ?



Bon ça confirme que tu as bien une vision complotiste ^^ que tout même son contraire te ramènera à ta petite vision… Bonne journée.


votre avatar

Pour les jeux, ce n’est pas la mise à jour de l’appli qui prend du temps, mais lors du lancement, la connexion aux serveur, la vérification des fichiers et le téléchargement des màj/dlc.

votre avatar







manu0086 a écrit :



C’est TA définition. Je n’invite rien, il le dit lui-même donc tu n’as pas la même définition que lui pour commencer… c’est bête hein de le prendre comme référence pour sortir des conclusions différentes ? tu ne trouves pas ?



Bon ça confirme que tu as bien une vision complotiste ^^ que tout même son contraire te ramènera à ta petite vision… Bonne journée.







Lol non non c’est bien LA définition de l’obsolescence programmée pour le reste je t’invite a voir ce qu’il en pense dans sa FAQ pour clore le débat, nulle doute qu’il fera de toute façon des vidéo a ce sujet ne serais ce que expliquer a ceux qui en doute (encore?) que l’obsolescence programmée est bien une réalité j’attends avec impatience que tu aille lui expliquer qu’il n’y connaît rien <img data-src=" /> parce que vu les compétences du bonhomme t’as intérêt a sortir un sacré cv pour avoir un minimum de crédibilité en face :))


votre avatar







Olbatar a écrit :



Lol non non c’est bien LA définition de l’obsolescence programmée pour le reste je t’invite a voir ce qu’il en pense dans sa FAQ pour clore le débat, nulle doute qu’il fera de toute façon des vidéo a ce sujet ne serais ce que expliquer a ceux qui en doute (encore?) que l’obsolescence programmée est bien une réalité j’attends avec impatience que tu aille lui expliquer qu’il n’y connaît rien <img data-src=" /> parce que vu les compétences du bonhomme t’as intérêt a sortir un sacré cv pour avoir un minimum de crédibilité en face :))





Ben ses connaissances t’en as rien à secouer visiblement car même quand il dit que ce n’est pas de l’obsolescence programmée, tu affirmes le contraire…



Et je n’ai jamais dis qu’elle n’existait pas, je dis simplement quand nous ressort cette bouse pour tout et n’importe quoi, t’en es la preuve flagrante, merci :)


votre avatar







indyiv a écrit :



s’ils pouvaient diminuer le nombre de maj tout simplement …





Ben il y a bien des solutions pour ça :




  • installer des applications qui ne sont pas/plus maintenues =&gt; 0 màj <img data-src=" />

  • ne pas installer d’applications =&gt; pas de màj <img data-src=" />

  • désactiver/désinstaller le PlayStore =&gt; màj plus proposées <img data-src=" />



    … je ne vois pas comment on peut reprocher aux développeurs d’applications de corriger et d’améliorer en continu leurs applications ?!?

    Ça va à l’encontre des méthodes de développement “récentes” (cf. méthode RERO : Release Early, Release Often).


votre avatar







jb a écrit :



Bah, les constructeurs, ils veulent se faire chier le moins possible, car ça coûte de l’argent… Et notamment si ils doivent faire une image complète. Si Google gérait les updates de tout ce qui est au-dessus du kernel (et donc device specific), ça éviterait une fragmentation, et ça éviterait de nombreuses failles de sécu.





Justement non, les constructeurs sont tres intéressés a pouvoir bidouiller leurs surcouches, c’est un facteur de differenciation pour eux…


votre avatar

+1

votre avatar







Drepanocytose a écrit :



Justement non, les constructeurs sont tres intéressés a pouvoir bidouiller leurs surcouches, c’est un facteur de differenciation pour eux…







+1.



Et les utilisateurs (les vrais, pas ceux qui fréquentent NXI) n’ont absolument pas conscience qu’un smartphone c’est un terminal composite hardware+software, dont le software est composé d’un OS, des drivers, des libs, des couches, des sur-couches etc.



Au mieux les utilisateurs différencient la “marque” (apple / samsung / tout le reste) et “l’interface” (la même / la nouvelle). Pour eux, le logiciel dans le smartphone ce sont les applications.


votre avatar

Huawei :)

votre avatar

Sérieux ?

Et ils sont comment leurs terminaux ?

J’ai un - un peu vieillissant - GS3 LTE dont je commence à ressentir l’envie (le besoin ? ) de le remplacer.

J’ai vu quelques modèles sympas (bon, ok, le S7, mais que chez samsung), mais qui me paraissent bien trop cher, surtout si c’est pour ne plus avoir de maj aussi rapidement.

votre avatar

Le honor4X est sorti en 2014 et a reçu android 6.0

J’ai un honor 5X, je suis aussi sous 6.0

(honor étant une sous marque de huawei d’excellente facture)



Je ne peux que te recommander le Honor 8, qui va surement être mon prochain portable ou le Mate 9(mais quand même un peu beaucoup plus cher) <img data-src=" /><img data-src=" />

votre avatar



Mais l’introduction de ce mécanisme est étrange à une époque où les forfaits data ne cessent de grandir.



Pourtant Google annonce sur le blog que cela leur permettra d’économiser jusqu’à 6 Po de données par jour ! Ce n’est pas négligeable.



The savings, compared to our previous approach, add up to 6 petabytes of user data saved per day!

votre avatar







Vincent_H a écrit :



Android 7.1.1 sera pourtant déployé sur le Nexus 6, c’était dans l’annonce officielle.







Mais n’a pas eu la preview (alors que c’était aussi annoncé), et c’est que parce que les gens ont gueulé, que ça a été remis.





votre avatar







manu0086 a écrit :



Ben ses connaissances t’en as rien à secouer visiblement car même quand il dit que ce n’est pas de l’obsolescence programmée, tu affirmes le contraire…



Et je n’ai jamais dis qu’elle n’existait pas, je dis simplement quand nous ressort cette bouse pour tout et n’importe quoi, t’en es la preuve flagrante, merci :)







Ah d’accord je croyais que quand tu disait sûre l’obsolescence programmée n’avait aucun sens dans le high tech tu voulais dire que ça n’avais pas cour dans le high tech et pour info le principe de l’obsolescence programmée c’est de pousser a la consommation <img data-src=" />


votre avatar







Drepanocytose a écrit :



Bon sinon, c’est dû à la difference d’environnement entre x86 (a peu pres unifié) et arm (le bordel).





Windows est aussi sous ARM.







jackjack2 a écrit :



Ensuite, comparer un OS desktop et un OS mobile me paraît bien cavalier







Et en quoi c’est différent?

C’est un kernel avec des drivers, des syscalls, un middleware, une UI et des applications. Le kernel Linux est aussi bien mobile que desktop. Windows et Darwin aussi.



Faut arrêter à un moment de défendre Google à tout prix: ils refusent de faire des mises à jour sérieuses.



Aujourd’hui, une MàJ Android, c’est un gros blob, qui modifie tout, du kernel aux appli. Il n’y a aucune raison pour que la partie basse (kernel+driver) soit corrélée de la partie middleware (SurfaceFlinger, AudioTrack, MediaServer…) ou de la partie haute.



Les constructeurs ne devraient toucher que kernel+driver, et le reste devrait être mis à jour automatiquement. Surtout que s’il est difficile de mettre à jour un driver, il est relativement simple de modifier les couches du middleware.



Le résultat, c’est que comme Google ne fait pas les mises à jour de ces parties centrales, les constructeurs y mettent les doigts et font n’importe quoi pour fixer à la va-vite (le nombre de bugs device spécifiques sur ces couches est hallucinant quand tu développes une appli). Et aussi on se retrouve avec des téléphones sans mises à jour, y compris au niveau sécurité.



Par exemple, énormément de device étaient bloqués en 4.2 (ou 4.3), parce que y avait pas de drivers MTK, alors que les grosses évolutions de 4.3 (ou 4.4) n’étaient pas du tout lié au kernel…



Je suis dev Android, et j’aime bcp Android, mais le refus d’update de Google est criminel.


votre avatar

Sur chrome, google avait abandonné bsdiff pour une solution maison, pourquoi ne pas utiliser cette technologie ? On parle du même google, non ?

votre avatar







myst6re a écrit :



Sur chrome, google avait abandonné bsdiff pour une solution maison, pourquoi ne pas utiliser cette technologie ? On parle du même google, non ?





Courgette. Mais c’était du patching ASM.


votre avatar
votre avatar

Mauvaise foi à ce que je vois

votre avatar

le lumia 920 c’est l’inverse, il a eut la preview de Win10 mais n’a jamais vu windows 10 final et n’en aura jamais les mises à jour.



Pas un constructeur de merde, Microsoft <img data-src=" />





Microsoft est très loin d’avoir un smartphone qui a eut 10 ans de mise à jour <img data-src=" />

votre avatar

1 seconde de plus par Mo ?!



😮

votre avatar

Sauf que Google s’est foiré en ce sens que la partue user d’Android est corrélée à une version de noyau

(pas les applications, hein, mais la base Android: libs et exe)

votre avatar







levhieu a écrit :



Sauf que Google s’est foiré en ce sens que la partue user d’Android est corrélée à une version de noyau

(pas les applications, hein, mais la base Android: libs et exe)







Mais quand tu regardes les sources d’AOSP et que tu fais des diffs, ce n’est pas le cas. Il y a rarement de nouvelle version d´Android qui ont besoin de facto de nouveau kernel ou de lib.



C’est juste un souci de process (un seul dump de code à chaque release ANdroid et surtout forcer les constructeurs à ne pas toucher au middleware) et donc de volonté, pas de limitation technique.


votre avatar

Effectivement, et je connais des gens qui ont joué à faire passer des versions AOSP un autre kernel (ou me plusieurs). Mais cette dépendance est cependant présente, et ça doit gêner les constructeurs.



Mais, à la réflexion, nettement moins que les modules livrés en binaire par les fournisseurs de SoC et de chips divers: Là encore, le module porte sa version de kernel, et si le fournisseur ne suit pas, le constructeur de téléphone est coincé (à titre personnel, j’ai déjà patché un binaire de module pour changer la version, mais ça marche tant que les API intra-kernel n’ont pas bougé, et puis, un constructeur peut-il se permettre ça ?)

votre avatar







levhieu a écrit :



Effectivement, et je connais des gens qui ont joué à faire passer des versions AOSP un autre kernel (ou me plusieurs). Mais cette dépendance est cependant présente, et ça doit gêner les constructeurs.



Mais, à la réflexion, nettement moins que les modules livrés en binaire par les fournisseurs de SoC et de chips divers: Là encore, le module porte sa version de kernel, et si le fournisseur ne suit pas, le constructeur de téléphone est coincé (à titre personnel, j’ai déjà patché un binaire de module pour changer la version, mais ça marche tant que les API intra-kernel n’ont pas bougé, et puis, un constructeur peut-il se permettre ça ?)







Bah, les constructeurs, ils veulent se faire chier le moins possible, car ça coûte de l’argent… Et notamment si ils doivent faire une image complète. Si Google gérait les updates de tout ce qui est au-dessus du kernel (et donc device specific), ça éviterait une fragmentation, et ça éviterait de nombreuses failles de sécu.


votre avatar







Vincent_H a écrit :



Mais l’introduction de ce mécanisme est étrange à une époque où les forfaits data ne cessent de grandir.





C’est juste le marketing Google qui veux faire passer cette amélioration comme étant pensée pour aider l’utilisateur à économiser son forfait alors que le but véritable est d’économiser quelques millions de $ en bande passante et peering coté Google.

Même quelques Ko sauvé par application est c’est probablement plusieurs To (Po ?) économisés chaque jour chez eux :)


votre avatar

s’ils pouvaient diminuer le nombre de maj tout simplement …

votre avatar

mais va multiplier le nombre de mises à&nbsp; jour par 10 <img data-src=" />

votre avatar

Pas mécontent d’avoir un téléphone avec une bonne autonomie ! <img data-src=" />



(7-8 Jours sans le recharger : j’ai décidé d’appeler mon téléphone Seb … Quand je vois l’autonomie je dis “Seb c’est bien !!” <img data-src=" />)

votre avatar

Suffit de pas avoir ces conneries sur son telephone… Ah merde en fait un nokia 3310 m’irait tres bien :P

votre avatar

Par contre, pour les mises à jour d’Android, vous pouvez toujours espérer…

votre avatar







jb a écrit :



Par contre, pour les mises à jour d’Android, vous pouvez toujours espérer…







Pour ceux qui se bornent à acheter un téléphone à un constructeur sans vérifier au préalable qu’il propose les MAJ Android dans des délais raisonnables, oui.



Comparer et se renseigner avant de venir pleurer? KOUWAAAAH? Ah non alors, rendez-moi mon monde d’assistés mentaux!


votre avatar







jackjack2 a écrit :



Pour ceux qui se bornent à acheter un téléphone à un constructeur sans vérifier au préalable qu’il propose les MAJ Android dans des délais raisonnables, oui.



Comparer et se renseigner avant de venir pleurer? KOUWAAAAH? Ah non alors, rendez-moi mon monde d’assistés mentaux!







Google ne fait plus d’update de son Nexus 6, 18 mois après son introduction en France. Pas un constructeur pourri, Google.



Faut pas déconner. Windows arrive à mettre à jour des OS pendant 10 ans, mais pas Google?


votre avatar











jb a écrit :



Google ne fait plus d’update de son Nexus 6, 18 mois après son introduction en France. Pas un constructeur pourri, Google.



Faut pas déconner. Windows arrive à mettre à jour des OS pendant 10 ans, mais pas Google?





Ah bon? des mises à jours sont dispos pourtant. T’es resté sur le petit retard du passage à Nougat ?


votre avatar

Quel(s) constructeur(s) fait(font) un réel suivi des maj au-delà de 2-3 ans ?

votre avatar







manu0086 a écrit :



Ah bon? des mises à jours sont dispos pourtant. T’es resté sur le petit retard du passage à Nougat ?





support.google.com GoogleNexus 6: octobre. Donc pas de 7.1.


votre avatar

Android 7.1.1 sera pourtant déployé sur le Nexus 6, c’était dans l’annonce officielle.

votre avatar

Ca ressemble à une initiative pour faire passer Android plus facilement dans les pays émergent ou les forfaits data sont chers et avec un petit débit

votre avatar







jb a écrit :



support.google.com GoogleNexus 6: octobre. Donc pas de 7.1.





Haha, tu parles des garanties minimales ^^

C’est affolant le nombre de personnes n’en comprenant pas le sens&nbsp;<img data-src=" />


votre avatar

N’empêche, ma N10 fonctionne encore très bien mais si j’ai bien compris, même les correctifs de sécurité ne seront bientôt plus déployés.



Alors évidemment, on peut se tourner vers les ROM customs mais on y gagne quelques bugs au passage (bug de caméra sur la N10 avec Nougat et des soucis avec la lecture de fichiers avec DRM Widevine par exemple).



Mais bon, on nous dit tout le temps que ça n’entre pas dans le cadre de l’obsolescence programmée car ça n’empêche pas l’appareil de fonctionner… Oui, il fonctionne, mais au niveau sécurité…

votre avatar







jb a écrit :



Faut pas déconner. Windows arrive à mettre à jour des OS pendant 10 ans, mais pas Google?





Et quand il n’y arrive pas, il supprime l’os….



Bon sinon, c’est dû à la difference d’environnement entre x86 (a peu pres unifié) et arm (le bordel).


votre avatar







neointhematrix a écrit :



N’empêche, ma N10 fonctionne encore très bien mais si j’ai bien compris, même les correctifs de sécurité ne seront bientôt plus déployés.



Alors évidemment, on peut se tourner vers les ROM customs mais on y gagne quelques bugs au passage (bug de caméra sur la N10 avec Nougat et des soucis avec la lecture de fichiers avec DRM Widevine par exemple).



Mais bon, on nous dit tout le temps que ça n’entre pas dans le cadre de l’obsolescence programmée car ça n’empêche pas l’appareil de fonctionner… Oui, il fonctionne, ais au niveau sécurité…





“L’obsolescence programmée”… alala quel grand terme à la mode! Mais qui n’a strictement aucun sens dans la high tech… L’obsolescence fait partie intégrante de la high tech depuis toujours, elle n’est pas programmée&nbsp;et n’a pas besoin de l’être.

C’est du niveau théorie du complot pour qualifier les choix techniques que vous ne comprenez pas… bref ça vole pas haut.


Google va diminuer le poids des mises à jour pour les applications Android

  • Réduire toujours plus la taille des patchs

  • Une augmentation parfois significative du temps d'installation

Fermer