
En 2024, un rapport a révélé que Google travaillait sur une fonctionnalité Linux pour Android. Cette fonctionnalité serait inspirée par le succès de Chrome OS, qui permet déjà l'exécution d'applications Linux. Avec cette fonctionnalité, Android pourrait permettre l'exécution de nombreuses applications Linux, offrant une plateforme encore plus polyvalente pour les développeurs et les utilisateurs avancés. Ils pourraient tester leurs applications directement sur leurs appareils Android, simplifiant ainsi le processus de développement et de débogage.
Si cette fonctionnalité Linux est attendue par les développeurs, la Beta 3 d'Android 16 ne présente aucune information sur le sujet. En effet, Google a récemment annoncé Android 16 Beta 3 qui est la version stable de la plateforme. Cela signifie que la surface de l'API est verrouillée, que les comportements des applications sont définitifs et que les développeurs peuvent envoyer leurs applications Android 16 sur le Play Store.
Parmi les nouveautés d'Android 16 Beta 3, les appareils Pixel 9 prennent désormais en charge la diffusion audio Auracast avec les appareils auditifs LE Audio compatibles. En outre, les utilisateurs malvoyants bénéficient désormais d'une meilleure expérience grâce à la nouvelle fonction de contour du texte. Cette version bêta introduit la possibilité de tester la fonction de protection du réseau local (LNP), qui obligera à terme les applications à demander une autorisation spécifique pour l'accès au réseau local.
Google annonce que la version majeure d'Android 16 est prévue pour le deuxième trimestre 2025, avec une autre mise à jour de l'API au quatrième trimestre. La version du deuxième trimestre sera la seule pour 2025 à introduire des changements de comportement affectant les applications, tandis que la mise à jour du quatrième trimestre se concentrera sur les nouvelles fonctionnalités, les optimisations et les corrections de bogues, sans apporter de changements susceptibles de perturber les applications existantes.
Voici quelques nouveautés d'Android 16 Beta 3 qui devraient intéresser les développeurs :
Prise en charge de la diffusion audio
Les appareils Pixel 9 sous Android 16 Beta prennent désormais en charge la diffusion audio Auracast avec les appareils auditifs LE Audio compatibles, dans le cadre des travaux d'Android visant à améliorer l'accessibilité audio. Basé sur la norme LE Audio, Auracast permet aux appareils auditifs et aux oreillettes compatibles de recevoir des flux audio directs provenant de lieux publics tels que les aéroports, les concerts et les salles de classe.
Contourner le texte pour un contraste maximal
Les utilisateurs malvoyants ont souvent une sensibilité au contraste réduite, ce qui les empêche de distinguer les objets de leur arrière-plan. Pour aider ces utilisateurs, Android 16 Beta 3 introduit le texte de contour, remplaçant le texte à fort contraste, qui dessine une plus grande zone de contraste autour du texte pour améliorer considérablement la lisibilité.
Android 16 contient également de nouvelles API AccessibilityManager pour permettre à vos applications de vérifier ou d'enregistrer un auditeur pour voir si ce mode est activé. Ceci est principalement destiné aux UI Toolkits tels que Compose, afin d'offrir une expérience visuelle similaire. Si vous gérez une bibliothèque UI Toolkit ou si votre application effectue un rendu de texte personnalisé qui contourne la classe android.text.Layout, vous pouvez l'utiliser pour savoir si le texte de contour est activé.
Testez votre application avec la protection du réseau local
Android 16 Beta 3 ajoute la possibilité de tester la fonctionnalité Protection du réseau local (LNP) qui est prévue pour une prochaine version majeure d'Android. Elle permet aux utilisateurs de mieux contrôler les applications qui peuvent accéder aux appareils de leur réseau local.
- Qu'est-ce qui change ?
Actuellement, toute application disposant de l'autorisation INTERNET peut communiquer avec les appareils du réseau local de l'utilisateur. À terme, la LNP exigera des applications qu'elles demandent une autorisation spécifique pour accéder au réseau local. - Bêta 3 : participer et tester
Dans la version bêta 3, la LNP est une fonction opt-in ou à participation facultative. C'est l'occasion de tester votre application et d'identifier les éléments qui dépendent de l'accès au réseau local. Utilisez cette commande adb pour activer les restrictions LNP pour votre application :Code : Sélectionner tout adb shell am compat enable RESTRICT_LOCAL_NETWORK <your_package_name>
Après le redémarrage de votre appareil, l'accès au réseau local de votre application est restreint. Testez les fonctionnalités susceptibles d'interagir avec les appareils locaux (par exemple, la découverte d'appareils, la diffusion de médias, la connexion à des appareils IoT). Attendez-vous à voir apparaître des erreurs de socket telles que EPERM ou ECONNABORTED si votre application tente d'accéder au réseau local sans l'autorisation nécessaire.
Préparez vos applications, bibliothèques, outils et moteurs de jeu !
Si vous développez un SDK, une bibliothèque, un outil ou un moteur de jeu, il est d'autant plus important de préparer dès maintenant les mises à jour nécessaires pour éviter que les développeurs d'applications et de jeux en aval ne soient bloqués par des problèmes de compatibilité et pour leur permettre de cibler les dernières fonctionnalités du SDK. Rappel aux développeurs, des mises à jour sont nécessaires pour prendre pleinement en charge Android 16.
Les tests consistent à installer votre application de production ou une application de test utilisant votre bibliothèque ou votre moteur via Google Play ou d'autres moyens sur un appareil ou un émulateur fonctionnant sous Android 16 Beta 3. Passez en revue tous les flux de votre application et recherchez les problèmes fonctionnels ou d'interface utilisateur. Examinez les changements de comportement pour cibler vos tests. Chaque version d'Android contient des changements de plateforme qui améliorent la confidentialité, la sécurité et l'expérience globale de l'utilisateur, et ces changements peuvent affecter vos applications. Voici plusieurs changements à prendre en compte, même si vous ne ciblez pas encore Android 16 :
- JobScheduler : Les quotas du JobScheduler sont appliqués de manière plus stricte dans Android 16 ; l'application se produira si un travail s'exécute alors que l'application est au premier plan, lorsqu'un service au premier plan est en cours d'exécution, ou dans le seau de veille actif. setImportantWhileForeground est maintenant une option sans effet. Le nouveau motif d'arrêt STOP_REASON_TIMEOUT_ABANDONED se produit lorsque l'application ne peut plus arrêter le travail.
- Diffusions : Les diffusions ordonnées utilisant des priorités ne fonctionnent qu'au sein du même processus. Utilisez d'autres IPC si vous avez besoin d'un ordre inter-processus.
- ART : Si vous utilisez la réflexion, JNI, ou tout autre moyen d'accéder aux éléments internes d'Android, votre application risque de tomber en panne. Ce n'est jamais une bonne pratique. Testez minutieusement.
- Intents : Android 16 dispose d'une sécurité renforcée contre les attaques par redirection d'intention. Testez votre gestion des intentions et ne renoncez aux protections qu'en cas d'absolue nécessité.
- Taille de page de 16 Ko : Si votre application n'est pas prête pour une taille de page de 16 Ko, vous pouvez utiliser le nouveau drapeau du mode de compatibilité, mais il est recommandé de migrer vers 16 Ko pour de meilleures performances.
- Accessibilité : announceForAccessibility est obsolète ; utilisez les alternatives recommandées.
- Bluetooth : Android 16 améliore la gestion de la perte de liaison Bluetooth, ce qui a un impact sur la façon dont le ré-appairage se produit.
Autres changements qui auront un impact une fois que votre application aura atteint Android 16 :
[LIST][*]Expérience utilisateur : Les changements incluent la suppression de l'opt-out bord à bord, la nécessité d'une migration ou d'un opt-out pour le retour prédictif, et la désactivation des API de polices élégantes.
[*]Fonctionnalité de base : Des optimisations ont été apportées à la planification du travail à taux fixe.
[*]Appareils à grand écran : Les restrictions en matière d'orientation, de redimensionnement et de rapport hauteur/largeur seront ignorées. Assurez-vous que vos mises en page prennent en charge toutes les orientations à travers...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.