iOS 5 : un nouveau système de purge des données des apps

Florian Innocente |

Apple a revu dans iOS 5 la manière dont les applications stockent leurs données, avec des implications pouvant, dans certains cas, gêner l'utilisateur. Depuis quelques jours Apple envoie à des développeurs un mail en les invitant à effectuer quelques modifications dans leurs applications (lire aussi iCloud : Apple prévient les développeurs gourmands).

Marco Arment le développeur d'Instapaper (qui stocke des articles trouvés sur le web et que l'on veut lire plus tard sur son Mac ou iPhone/iPad) prend le cas de son utilitaire et cite d'autres exemples.

Il rappelle d'abord qu'une application iOS contient une arborescence de dossiers dans lesquels sont notamment enregistrés fichiers et réglages. Ces contenus sont synchronisés avec iTunes, sauf les éléments rangés dans les dossiers 'Cache' et 'tmp'.

iOS jusque-là ne touchait pas à ces deux dossiers. Dès lors, le développeur les utilisait pour y placer en local ces articles à lire. Instapaper possède une copie en ligne de chacun sur ses propres serveurs. En cas de suppression de ces dossiers (lors d'une restauration de l'iPhone ou d'une perte de données), le contenu de ces deux répertoires peut être ainsi restauré. Et ces articles n'étant pas dans les dossiers synchronisables avec iTunes, cette opération est aussi plus courte.

Avec iOS 5, Apple a changé les règles. Dans le sous-dossier 'Documents' d'une app, le développeur place tout contenu créé par l'utilisateur ou qui ne peut être régénéré par l'application elle-même. Ces éléments sont sauvegardés vers iCloud.

À l'inverse, ce qui peut être récupéré avec un téléchargement doit être placé dans le répertoire 'Cache'. Typiquement, des articles ou une galerie d'images dans une app d'actualité. D'une part l'utilisateur n'en est pas l'auteur et d'autre part il peut les recharger depuis le site du média.

Tout irait bien, explique Arment, si iOS 5 ne s'était arrogé le droit de purger d'autorité ces dossiers ‘Cache' et 'tmp' lorsque la place libre vient à manquer sur l'iPad ou l'iPhone. Dans ce cas une application d'actualité verra son contenu supprimé, obligeant l'utilisateur à le recharger au prochain lancement.

Tant que l'on a du réseau la gêne est relative, mais il est des scénarios problématiques. Par exemple lorsque vous chargez une application de son contenu avant de vous retrouver sans réseau ou dans une situation où cela pèsera sur votre forfait data. Pour peu qu'iOS entre-temps ait eu besoin de plus de place, il supprimera ces fichiers, vous laissant une application vierge de ses données. Avec à la clef au mieux la surprise de l'utilisateur, au pire son mécontentement devant ce qui sera pris pour un bug de l'application.

Pour Arment, iOS 5 doit proposer une solution médiane. Un dossier de stockage qui ne se synchronise pas avec iCloud et auquel iOS ne touche pas. Et qui ne disparaîtra qu'une fois l'application supprimée. Il faut toutefois bien souligner que cette purge automatique ne se fait qu'en cas de manque d'espace de stockage. Les propriétaires de modèles 32 ou 64 Go seront dès lors avantagés.

Accédez aux commentaires de l'article