Depuis qu'Android existe, les applications Android ont été lancées au format APK (qui signifie Android package kit). La plupart du temps, les applications sur Android sont distribuées dans des fichiers APK. Un APK contient l'ensemble du code et des ressources d'une application, ainsi que certaines fonctions de sécurité comme un manifeste de signature. Lorsqu'un APK est installé, il est simplement copié dans un dossier spécifique et ajouté à une base de données interne des applications installées.
Pendant l'installation, la signature de l'application est également vérifiée pour s'assurer qu'elle est valide. Si l'application est déjà installée, Android compare la signature de la nouvelle application à celle de l'application déjà installée. Si la signature n'est pas valide ou ne correspond pas, Android refuse d'installer l'application. Cette vérification de la signature est un élément important de la sécurité d'Android. Elle permet de s'assurer que l'application que vous installez est valide et provient au moins de la même source que celle que vous avez déjà installée.
Cependant, en 2018, Google a introduit un nouveau format appelé Android App Bundles, ou AAB. Google a vanté le fait que ce nouveau format permettrait d'obtenir des fichiers d'applications plus petits et des moyens plus faciles de contrôler divers aspects des applications. Parmi les millions d'applications présentes sur le Google Play Store, des milliers utilisent déjà le système AAB.
En novembre dernier, Google a annoncé que les développeurs seraient tenus de publier de nouvelles applications sur le Play Store en utilisant le format Android App Bundle au lieu d'un APK. Mardi, Google a annoncé que le format AAB allait désormais remplacer officiellement les APK d'Android. Cela signifie qu'à partir du mois d'août de cette année, toutes les nouvelles applications soumises au Google Play Store devront être au format AAB.
Avec App Bundles, les ressources APK comme les mises en page, les images, l'audio, etc., entre en jeu. Pour mieux prendre en charge différentes configurations d'affichage et différentes langues, les développeurs peuvent créer plusieurs versions de la même ressource qui sont utilisées en fonction de l'appareil et de la langue. Mais dans un APK, toutes ces ressources existent, peu importe celle que vous utilisez. Et elles prennent beaucoup de place.
Selon la complexité de votre application, il peut y avoir beaucoup de ressources inutilisées pour beaucoup d'appareils. C'est ce que les App Bundles sont censés résoudre. Google les utilise pour générer un grand nombre d'APK différents pour différentes configurations d'appareils. Chaque App Bundle ne contient que les ressources nécessaires à cette configuration.
Fini les APK Android : bonne ou mauvaise nouvelle ?
L'une des caractéristiques les plus intéressantes de l’Android App Bundle est qu'une application peut être divisée en plusieurs parties. Imaginez un jeu, beaucoup de ceux qui l'essaient ne dépasseront pas le premier niveau – alors, pourquoi télécharger toutes les ressources ? Avec Play Asset Delivery, les derniers niveaux ne peuvent être téléchargés qu'en cas de besoin. Et le Play Store déterminera quelles ressources sont les mieux adaptées à votre appareil, par exemple, pas besoin de textures haute résolution sur un appareil bas de gamme, ce qui réduira encore les besoins en transfert de données.
Au final, il s'agit d'une bonne nouvelle pour le consommateur. Les paquets d'applications Android peuvent être jusqu'à 15 % plus petits que les APK Android, par exemple. Les développeurs auront également plus de contrôle sur la façon dont ils distribuent les mises à jour des applications, ce qui se traduira probablement par des mises à jour plus rapides et plus efficaces.
Voici, ci-dessous, quelques-uns des nombreux avantages potentiels du nouveau format que Google a vanté dans son article :
- Android App Bundle : Google Play utilise le bundle d'applications pour générer et optimiser les APK en vue de leur distribution pour différentes configurations d'appareils et langues. Votre application est ainsi plus petite (en moyenne, 15 % de moins qu'un APK universel) et plus rapide à télécharger, ce qui peut entraîner plus d'installations et moins de désinstallations.
- Play App Signing : Play App Signing, qui est requis pour les lots d'applications, protège votre clé de signature d'application contre la perte en utilisant l'infrastructure sécurisée de Google et offre la possibilité de mettre à niveau vers une nouvelle clé de signature d'application plus puissante sur le plan cryptographique.
- Play Feature Delivery : utilisée par plus de 10 % des principales applications utilisant des lots d'applications, la fonction Play Feature Delivery vous permet de personnaliser quels modules de fonctionnalités sont livrés à chaque appareil et à quel moment.
- Play Asset Delivery : réduit le temps d'attente des utilisateurs en livrant dynamiquement des ressources importantes tout en réduisant les coûts de livraison. Les jeux utilisant Play Asset Delivery peuvent utiliser le ciblage du format de compression de la texture, de sorte que vos utilisateurs ne reçoivent que les ressources adaptées à leur appareil, sans gaspillage d'espace ou de bande passante.
De nombreux développeurs l'utilisent déjà : la majorité des 1 000 premières applications sur Play sont des apps bundles, d’après Google. Au total, plus d'un million d'applications sont disponibles au format AAB. La création d'un APK et d'un Android App Bundle n'est pas non plus un processus difficile, il suffit de quelques clics sur les principaux outils (par exemple Android Studio, Unity, Unreal Engine et autres), lit-on.
Pour l'instant, seul Google Play Store prend en charge le format AAB. Amazon Appstore, qui sera le magasin d'applications Android par défaut sur Windows 11, ne le fait pas. Et ce n'est pas non plus le cas pour les magasins d'applications tiers, qui seront pris en charge de manière native dans la prochaine mise à jour d'Android 12. Ce qui pourrait poser un problème pour les développeurs d’applications. En effet, c’est que les développeurs qui veulent que leurs applications apparaissent dans d'autres canaux de distribution – comme l'Amazon App Store ou l'App Gallery de Huawei – devront exporter manuellement les versions APK de leurs applications.
Toutefois, le format Android App Bundle est open source, de sorte que d'autres magasins peuvent l'adopter. Google, bien sûr, présente le nouveau format comme une mise à niveau, l’AAB ayant été introduit il y a plus de deux ans.
L'obligation d'utiliser les Android App Bundles ne s'applique qu'aux nouvelles applications, selon Google. « Les applications existantes sont actuellement exemptées, tout comme les applications privées publiées pour les utilisateurs gérés de Google Play », a précisé la société. Les applications existantes peuvent continuer à fournir des mises à jour sous forme d'APK, et le passage à l’AAB n'éliminera pas les magasins d'applications concurrents. Si vous êtes un développeur qui prévoit de publier une nouvelle application, il ne vous reste que peu de temps pour vous assurer que vous utilisez le nouveau format.
Source : Google
Et vous ?
Que pensez-vous du remplacement des APK par le format Android App Bundle ?
Selon vous, comment cela affecte-t-il les développeurs, les magasins d'applications tiers, les personnes qui installent à partir d'APK pour une raison quelconque ?
Y a-t-il des inconvénients à ce changement ?
Voir aussi :
Google Play prend mieux en charge les Android App Bundles plus volumineux, et facilite la conception des Instant Apps
Google : tous les comptes de développeurs Play Store devront activer la vérification en deux étapes, fournir une adresse, et vérifier leurs coordonnées dans le courant de l'année
Google annonce qu'il va activer par défaut l'authentification à deux facteurs pour tous ses utilisateurs, afin d'accroître la sécurité des comptes
Play Store : Google a supprimé 17 applications Android infectées par le malware Joker, et téléchargées plus de 120 000 fois