Migrer des applications vers Android 14

Ce document offre une vue d'ensemble des phases de développement et de test types. Il peut vous aider à élaborer un plan d'aptitude adapté au calendrier de lancement de la plate-forme et à offrir une expérience de qualité à vos utilisateurs sur Android 14.

À chaque version d'Android, nous introduisons de nouvelles fonctionnalités et des modifications de comportement visant à rendre Android plus utile, plus sécurisé et plus performant. Dans de nombreux cas, votre application fonctionnera exactement comme prévu, tandis que dans d'autres cas, vous devrez peut-être la mettre à jour pour l'adapter aux modifications de la plate-forme.

Les utilisateurs peuvent commencer à recevoir la nouvelle plate-forme dès que le code source est publié dans AOSP (Android Open Source Project). Il est donc important que vos applications soient prêtes, fonctionnent comme prévu pour les utilisateurs et exploitent idéalement les nouvelles fonctionnalités et API pour tirer le meilleur parti de la nouvelle plate-forme.

Une migration type comporte deux phases pouvant être simultanées :

  • Assurer la compatibilité des applications (avec la version finale d'Android 14)
  • Cibler les nouvelles fonctionnalités et API de la plate-forme (dès que possible après la version finale)

Assurer la compatibilité avec Android 14

Il est important de tester les fonctionnalités de votre application existante sur Android 14 afin de garantir une expérience optimale aux utilisateurs qui effectuent la mise à jour vers la dernière version d'Android. Certaines modifications de la plate-forme peuvent affecter le comportement de votre application. Il est donc important de tester votre application de manière anticipée et approfondie, et d'y apporter les ajustements nécessaires.

Vous pouvez généralement ajuster votre application et publier une mise à jour sans avoir à modifier le targetSdkVersion de l'application. De même, vous ne devriez pas avoir besoin d'utiliser de nouvelles API ni de modifier le compileSdkVersion de l'application, bien que cela puisse dépendre de la manière dont votre application est compilée et des fonctionnalités de la plate-forme qu'elle utilise.

Avant de commencer les tests, veillez à vous familiariser avec les modifications de comportement de toutes les applications. Ces modifications peuvent affecter votre application, même si vous ne modifiez pas sa targetSdkVersion.

Obtenir Android 14

Flashez une image système Android 14 sur votre appareil ou téléchargez une image système pour Android Emulator.

Examiner les modifications

Examinez les modifications de comportement du système pour identifier les éléments de votre application pouvant être affectés.

Tester

Installez votre application sur votre appareil ou votre émulateur, puis exécutez des tests. Concentrez-vous sur les modifications de comportement du système et parcourez tous les flux d'applications.

Mettre à jour

N'apportez que les modifications de code nécessaires pour vous adapter aux modifications de comportement ou résoudre les problèmes. Recompilez avec le même niveau d'API que celui initialement ciblé par votre application. Cibler Android 14 n'est pas nécessaire.

Publier

Signez, importez et publiez votre Android App Bundle ou APK mis à jour.

Effectuer des tests de compatibilité

Dans la plupart des cas, les tests de compatibilité avec Android 14 sont semblables aux tests d'applications ordinaires. C'est le moment de consulter les consignes fondamentales relatives à la qualité des applications et les bonnes pratiques en matière de test.

Pour effectuer des tests, installez votre application publiée sur un appareil équipé d'Android 14, puis parcourez tous les flux et toutes les fonctionnalités à la recherche de problèmes. Pour vous aider à réaliser vos tests, examinez les modifications de comportement de toutes les applications introduites dans Android 14. Ces modifications peuvent avoir une incidence sur le fonctionnement de votre application ou la faire planter.

Veillez également à examiner et tester les interfaces non SDK limitées. Vous devez remplacer toute interface limitée utilisée par votre application par un SDK public ou un équivalent NDK. Surveillez les avertissements Logcat qui mettent en évidence ces accès, et utilisez la méthode StrictMode detectNonSdkApiUsage() pour les intercepter par programmation.

Enfin, veillez à tester complètement les bibliothèques et les SDK de votre application pour vous assurer qu'ils fonctionnent comme prévu sur Android 14, et suivez les bonnes pratiques en matière de confidentialité, de performances, d'expérience utilisateur, de gestion des données et d'autorisations. Si vous rencontrez un problème, essayez d'installer la dernière version du SDK ou contactez le développeur du SDK pour obtenir de l'aide.

Une fois les tests terminés et les mises à jour effectuées, nous vous recommandons de publier immédiatement votre application compatible. Cela permettra à vos utilisateurs de tester l'application plus tôt et facilitera leur passage à Android 14.

Mettre à jour le ciblage de l'application et intégrer de nouvelles API

Une fois que vous avez publié une version compatible de votre application, vous devez la rendre entièrement compatible avec Android 14. Pour ce faire, mettez à jour sa targetSdkVersion et tirez parti des nouvelles API et fonctionnalités d'Android 14. Vous pouvez effectuer ces mises à jour dès que vous êtes prêt, en tenant compte des exigences de Google Play pour cibler la nouvelle plate-forme.

Consultez les modifications de comportement qui affectent les applications ciblant Android 14 afin de vous assurer que votre application est entièrement compatible avec Android 14. Ces modifications de comportement ciblées peuvent entraîner des problèmes fonctionnels que vous devez ensuite résoudre. Dans certains cas, ces modifications nécessitent un développement important. Nous vous recommandons donc de prendre connaissance de ces changements et de les traiter le plus tôt possible. Pour vous aider à identifier les modifications de comportement spécifiques qui affectent votre application, utilisez les boutons d'activation/de désactivation de la compatibilité pour tester votre application avec certaines modifications activées.

Les étapes suivantes décrivent comment assurer une compatibilité complète avec Android 14.

Obtenir le SDK Android 14

Installez la dernière version preview d'Android Studio pour compiler avec Android 14. Assurez-vous de disposer d'un appareil ou d'un émulateur Android 14.
Mettez à jour votre targetSdkVersion et autres configurations de compilation.

Examiner les modifications de comportement

Consultez les modifications de comportement qui s'appliquent aux applications ciblant Android 14. Identifiez les éléments de votre application pouvant être affectés et réfléchissez à comment résoudre ces problèmes.

Vérifier si de nouvelles modifications ont été apportées à la confidentialité

Apportez les modifications de code et d'architecture nécessaires pour vous conformer à la confidentialité des utilisateurs d'Android 14.

Adopter les fonctionnalités d'Android 14

Profitez des API Android 14 pour intégrer de nouvelles fonctionnalités à vos applications. Recompilez pour Android 14.

Tester

Effectuez des tests sur un appareil ou un émulateur Android 14. Concentrez-vous sur les éléments de votre application pouvant être affectés par des modifications de comportement. Essayez de nouvelles fonctionnalités utilisant de nouvelles API. Faites part de vos commentaires concernant la plate-forme et l'API. Signalez tout problème lié à la plate-forme, à l'API ou aux SDK tiers.

Dernière mise à jour

Une fois les API Android 14 finalisées, mettez à jour votre targetSdkVersion et autres configurations de compilation, effectuez les mises à jour supplémentaires et testez votre application.

Publier

Signez, importez et publiez votre Android App Bundle ou APK mis à jour.

Obtenir le SDK, modifier le ciblage et compiler avec de nouvelles API

Pour commencer à tester la compatibilité complète avec Android 14, utilisez la dernière version preview d'Android Studio pour télécharger le SDK Android 14 et tous les autres outils dont vous avez besoin. Ensuite, mettez à jour les fichiers targetSdkVersion et compileSdkVersion de votre application, puis recompilez-la. Pour en savoir plus, consultez le guide de configuration du SDK.

Tester votre application Android 14

Une fois l'application compilée et installée sur un appareil équipé d'Android 14, commencez les tests pour vous assurer qu'elle fonctionne correctement lorsque vous ciblez Android 14. Certains changements de comportement ne s'appliquent que lorsque votre application cible la nouvelle plate-forme. Nous vous recommandons donc de consulter ces modifications avant de commencer.

Comme pour les tests de compatibilité de base, parcourez tous les flux et toutes les fonctionnalités à la recherche de problèmes. Axez vos tests sur les modifications de comportement pour les applications ciblant Android 14. Nous vous conseillons également de vérifier que votre application respecte les consignes fondamentales relatives à la qualité des applications et les bonnes pratiques en matière de test.

Assurez-vous d'examiner et de tester les utilisations d'interfaces non SDK limitées qui peuvent s'appliquer. Surveillez les avertissements Logcat qui mettent en évidence ces accès et utilisez la méthode StrictMode detectNonSdkApiUsage() pour les intercepter par programmation.

Enfin, veillez à tester complètement les bibliothèques et les SDK de votre application pour vous assurer qu'ils fonctionnent comme prévu sur Android 14, et suivez les bonnes pratiques en matière de confidentialité, de performances, d'expérience utilisateur, de gestion des données et d'autorisations. Si vous rencontrez un problème, essayez d'installer la dernière version du SDK ou contactez le développeur du SDK pour obtenir de l'aide.

Tester à l'aide des boutons d'activation/de désactivation de la compatibilité avec les applications

Android 14 inclut des boutons d'activation/de désactivation de la compatibilité qui facilitent le test de votre application avec des modifications de comportement ciblées. Si votre application est débogable, voici ce que les boutons d'activation/de désactivation vous permettent de faire :

  • Tester les modifications ciblées sans réellement modifier la targetSdkVersion de l'application. Vous pouvez utiliser les boutons d'activation/de désactivation pour forcer l'activation de certaines modifications du comportement afin d'évaluer l'impact sur votre application.
  • Axer votre test sur des modifications spécifiques. Plutôt que d'avoir à traiter toutes les modifications ciblées en même temps, les boutons d'activation/de désactivation vous permettent de désactiver toutes les modifications ciblées, à l'exception de celles que vous souhaitez tester.
  • Gérer les boutons d'activation/de désactivation via adb. Vous pouvez utiliser les commandes adb pour activer et désactiver les modifications à activer/désactiver dans votre environnement de test automatisé.
  • Déboguer plus rapidement grâce aux ID de modification standards. Les modifications pouvant être activées/désactivées possèdent chacune un ID et un nom uniques que vous pouvez utiliser pour déboguer rapidement l'origine du problème dans la sortie du journal.

Lorsque vous préparez la modification du ciblage de votre application ou que vous développez activement la compatibilité avec Android 14, les boutons d'activation/de désactivation peuvent vous aider. Pour en savoir plus, consultez les modifications apportées au framework de compatibilité (Android 14).