Android 16 offre aux développeurs de nouvelles fonctionnalités et API de qualité. Les sections suivantes résument ces fonctionnalités pour vous aider à vous lancer avec les API associées.
Vous devez également examiner les éléments de vos applications pouvant être affectés par les modifications de la plate-forme. Pour en savoir plus, consultez les pages suivantes:
- Changements de comportement affectant les applications lorsqu'elles ciblent Android 16
- Changements de comportement affectant toutes les applications, quel que soit le
targetSdkVersion
Fonctionnalité de base
Android inclut de nouvelles API qui étendent les fonctionnalités de base du système Android.
Deux versions d'API Android en 2025
- Cette version Preview concerne la prochaine version majeure d'Android, dont le lancement est prévu pour le deuxième trimestre 2025. Cette version est semblable à toutes nos versions d'API précédentes, où nous pouvons planifier des modifications de comportement souvent liées à une version cible de SDK.
- Nous prévoyons de publier la version majeure un trimestre plus tôt (au deuxième trimestre plutôt qu'au troisième trimestre les années précédentes) afin de mieux nous aligner sur le calendrier de lancement des appareils dans notre écosystème. Ainsi, plus d'appareils pourront bénéficier de la version majeure d'Android plus tôt. La version majeure étant prévue pour le deuxième trimestre, vous devrez effectuer vos tests de compatibilité annuels quelques mois plus tôt que les années précédentes pour vous assurer que vos applications sont prêtes.
- Nous prévoyons de publier une nouvelle version au quatrième trimestre 2025, qui inclura également de nouvelles API pour les développeurs. La version majeure du deuxième trimestre sera la seule version de 2025 à inclure des modifications de comportement planifiées pouvant affecter les applications.
En plus des nouvelles API pour les développeurs, la version mineure du quatrième trimestre comprendra des mises à jour de fonctionnalités, des optimisations et des corrections de bugs. Elle n'inclura aucune modification de comportement affectant les applications.
Nous continuerons à publier des versions Android trimestrielles. Les mises à jour du premier et du troisième trimestre entre les versions de l'API fourniront des mises à jour incrémentielles pour garantir une qualité continue. Nous collaborons activement avec nos partenaires pour proposer la version du second trimestre sur autant d'appareils que possible.
Utiliser les nouvelles API avec les versions majeures et mineures
La protection d'un bloc de code avec une vérification du niveau d'API se fait aujourd'hui à l'aide de la constante SDK_INT
avec VERSION_CODES
. Cette fonctionnalité restera compatible avec les principales versions d'Android.
if (SDK_INT >= VERSION_CODES.BAKLAVA) {
// Use APIs introduced in Android 16
}
La nouvelle constante SDK_INT_FULL
peut être utilisée pour les vérifications d'API sur les versions majeures et mineures avec la nouvelle énumération VERSION_CODES_FULL
.
if (SDK_INT_FULL >= VERSION_CODES_FULL.[MAJOR or MINOR RELEASE]) {
// Use APIs introduced in a major or minor release
}
Vous pouvez également utiliser la méthode Build.getMinorSdkVersion()
pour obtenir uniquement la version mineure du SDK.
val minorSdkVersion = Build.getMinorSdkVersion(VERSION_CODES_FULL.BAKLAVA)
Ces API n'ont pas encore été finalisées et sont susceptibles d'être modifiées. N'hésitez donc pas à nous envoyer vos commentaires si vous avez des questions.
Expérience utilisateur et interface utilisateur du système
Android 16 offre aux développeurs d'applications et aux utilisateurs plus de contrôle et de flexibilité pour configurer leur appareil en fonction de leurs besoins.
Mises à jour de la prévisualisation du Retour
Android 16 添加了新 API,可帮助您在手势导航中启用预测性返回系统动画,例如“返回主屏幕”动画。通过使用新的 PRIORITY_SYSTEM_NAVIGATION_OBSERVER
注册 onBackInvokedCallback
,您的应用可以在系统处理返回导航时接收常规的 onBackInvoked
调用,而不会影响正常的返回导航流程。
Android 16 还添加了 finishAndRemoveTaskCallback()
和 moveTaskToBackCallback
。通过向 OnBackInvokedDispatcher
注册这些回调,系统可以在调用返回手势时触发特定行为并播放相应的提前动画。
Retour haptique plus riche
Android expose le contrôle de l'actionneur haptique depuis sa création.
Android 11 a ajouté la prise en charge d'effets haptiques plus complexes que les actionneurs plus avancés peuvent prendre en charge via VibrationEffect.Compositions
de primitives sémantiques définies par l'appareil.
Android 16 ajoute des API haptiques qui permettent aux applications de définir les courbes d'amplitude et de fréquence d'un effet haptique tout en éliminant les différences entre les fonctionnalités de l'appareil.
Performances et batterie
Android 16 introduit des API qui permettent de collecter des insights sur vos applications.
Profilage déclenché par le système
ProfilingManager
在 Android 15 中添加,让应用能够在现场使用 Perfetto 请求收集性能数据。不过,由于此性能分析必须从应用启动,因此应用很难或根本无法捕获启动或 ANR 等关键流程。
为此,Android 16 向 ProfilingManager
引入了系统触发的性能分析。应用可以注册接收特定触发器(例如冷启动 reportFullyDrawn
或 ANR)轨迹的兴趣,然后系统会代表应用启动和停止轨迹。轨迹完成后,结果会传送到应用的数据目录。
Démarrer le composant dans ApplicationStartInfo
ApplicationStartInfo
a été ajouté dans Android 15, ce qui permet à une application de voir les raisons du démarrage du processus, le type de démarrage, les heures de démarrage, le débit limité et d'autres données de diagnostic utiles. Android 16 ajoute getStartComponent()
pour distinguer le type de composant qui a déclenché le démarrage, ce qui peut être utile pour optimiser le flux de démarrage de votre application.
Meilleure introspection des offres d'emploi
L'API JobScheduler#getPendingJobReason()
renvoie la raison pour laquelle une tâche peut être en attente. Cependant, une tâche peut être en attente pour plusieurs raisons.
Dans Android 16, nous introduisons une nouvelle API JobScheduler#getPendingJobReasons(int jobId)
, qui renvoie plusieurs raisons pour lesquelles une tâche est en attente, en raison de contraintes explicites définies par le développeur et de contraintes implicites définies par le système.
Nous lançons également JobScheduler#getPendingJobReasonsHistory(int jobId)
, qui renvoie une liste des modifications de contraintes les plus récentes.
Nous vous recommandons d'utiliser l'API pour vous aider à déboguer les raisons pour lesquelles vos tâches ne s'exécutent pas, en particulier si vous constatez une baisse des taux de réussite de certaines tâches ou des bugs liés à la latence de certaines tâches. Par exemple, la mise à jour des widgets en arrière-plan n'a pas été effectuée ou la tâche de préchargement n'a pas pu être appelée avant le démarrage de l'application.
Cela peut également vous aider à mieux comprendre si certaines tâches ne sont pas effectuées en raison de contraintes définies par le système plutôt que de contraintes définies explicitement.
Fréquence d'actualisation adaptative
Android 15 中引入的自适应刷新率 (ARR) 可让受支持硬件上的显示屏刷新率使用离散的 VSync 步长来适应内容帧速率。这不仅降低了功耗,还无需进行可能导致卡顿的模式切换。
Android 16 引入了 hasArrSupport()
和 getSuggestedFrameRate(int)
,同时恢复了 getSupportedRefreshRates()
,以便您的应用更轻松地利用 ARR。RecyclerView 1.4 在从快速滑动或平滑滚动中稳定下来时会在内部支持 ARR,我们将继续努力,将 ARR 支持添加到更多 Jetpack 库中。这篇帧速率文章介绍了许多可用于设置帧速率的 API,以便您的应用可以直接使用 ARR。
Connectivité
Android 16 met à jour la plate-forme pour donner à votre application accès aux dernières avancées en matière de communication et de technologies sans fil.
Détermination de la position avec sécurité renforcée
Android 16 prend en charge les fonctionnalités de sécurité robustes dans la localisation Wi-Fi sur les appareils compatibles avec la norme 802.11az du Wi-Fi 6, ce qui permet aux applications de combiner la précision, l'évolutivité et la planification dynamique accrues du protocole avec des améliorations de sécurité, y compris le chiffrement basé sur AES-256 et la protection contre les attaques MITM. Cela permet de l'utiliser plus en toute sécurité dans les cas d'utilisation de proximité, comme le déverrouillage d'un ordinateur portable ou d'une porte de véhicule. La norme 802.11az est intégrée à la norme Wi-Fi 6, qui exploite son infrastructure et ses fonctionnalités pour une adoption plus large et un déploiement plus facile.
Contenus multimédias
Android 16 inclut diverses fonctionnalités qui améliorent l'expérience multimédia.
Améliorations apportées au sélecteur de photos
照片选择器为用户提供了一种安全的内置授权方式,让用户可以向应用授予对本地存储空间和云端存储空间中所选图片和视频的访问权限,而不是对整个媒体库的访问权限。通过 Google 系统更新和 Google Play 服务组合使用模块化系统组件,该工具向后支持到 Android 4.4(API 级别 19)。只需几行代码即可与相关的 Android Jetpack 库集成。
Android 16 对照片选择器进行了以下改进:
- 嵌入式照片选择器:新 API,可让应用将照片选择器嵌入其视图层次结构中。这样,它就感觉像是应用中更为集成的一部分,同时仍可利用进程隔离功能,让用户能够选择媒体,而无需应用拥有过于宽泛的权限。为了最大限度地提高跨平台版本的兼容性并简化集成,如果您想集成嵌入式照片选择器,则需要使用即将推出的 Android Jetpack 库。
- 照片选择器中的云搜索:新的 API 可让 Android 照片选择器从云端媒体提供商中进行搜索。照片选择器中的搜索功能即将推出。
Confidentialité
Android 16 inclut diverses fonctionnalités qui aident les développeurs d'applications à protéger la confidentialité des utilisateurs.
Mises à jour de Santé Connect
开发者预览版中的 Health Connect 新增了 ACTIVITY_INTENSITY
,这是一种根据世界卫生组织关于中等强度和剧烈强度活动的指南定义的新数据类型。每个记录都需要提供开始时间、结束时间以及活动强度(中等或剧烈)。
Health Connect 还包含支持健康记录的更新版 API。这样一来,应用便可以在征得用户明确同意的情况下,以 FHIR 格式读取和写入医疗记录。此 API 目前处于抢先体验计划阶段。如果您想参与,请报名参加抢先体验计划。
Privacy Sandbox sur Android
Android 16 中集成了最新版本的 Privacy Sandbox on Android,这是我们持续致力于开发可让用户放心地知道其隐私受到保护的技术的一部分。您可以访问我们的网站,详细了解 Privacy Sandbox on Android 开发者 Beta 版计划,以便顺利上手。不妨了解 SDK 运行时,它可让 SDK 在与其所服务的应用分离的专用运行时环境中运行,从而为用户数据收集和共享提供更强的保护措施。