Recursos e APIs

O Android 16 introduz ótimos recursos e APIs novos para desenvolvedores. As seções a seguir resumem esses recursos para ajudar você a começar a usar as APIs relacionadas.

Também é importante analisar as áreas em que as mudanças na plataforma podem afetar seus apps. Para mais informações, consulte as seguintes páginas:

Principal recurso

O Android inclui novas APIs que ampliam os recursos principais do sistema.

Duas versões da API do Android em 2025

  • Esta visualização é para a próxima versão principal do Android, com lançamento previsto no segundo trimestre de 2025. Esta versão é semelhante a todas as versões de API do passado, em que podemos ter mudanças de comportamento planejadas que geralmente são vinculadas a uma targetSdkVersion.
  • Estamos planejando o lançamento principal um trimestre antes (segundo trimestre em vez do terceiro trimestre em anos anteriores) para alinhar melhor com a programação de lançamentos de dispositivos em todo o ecossistema, para que mais dispositivos possam receber a versão principal do Android mais cedo. Com o lançamento principal no segundo trimestre, você precisará fazer o teste anual de compatibilidade alguns meses antes do que nos anos anteriores para garantir que seus apps estão prontos.
  • Planejamos lançar outra versão no 4º trimestre de 2025, que também vai incluir novas APIs para desenvolvedores. A versão principal do segundo trimestre será a única em 2025 a incluir mudanças de comportamento planejadas que podem afetar apps.

Além das novas APIs para desenvolvedores, a versão secundária do Q4 vai incluir atualizações de recursos, otimizações e correções de bugs. Ela não vai incluir mudanças de comportamento que afetam o app.

Visualização da linha do tempo das versões do Android em 2025. A versão 25Q2
       é uma versão principal e a 25Q4 é uma versão secundária.

Vamos continuar lançando versões do Android trimestralmente. As atualizações do Q1 e do Q3 entre as versões da API vão oferecer atualizações incrementais para ajudar a garantir qualidade contínua. Estamos trabalhando ativamente com nossos parceiros de dispositivos para disponibilizar a versão do segundo trimestre no maior número possível de dispositivos.

Como usar novas APIs com versões principais e secundárias

Hoje, a proteção de um bloco de código com uma verificação do nível da API é feita usando a constante SDK_INT com VERSION_CODES. Esse suporte vai continuar sendo oferecido para as principais versões do Android.

if (SDK_INT >= VERSION_CODES.BAKLAVA) {
  // Use APIs introduced in Android 16
}

A nova constante SDK_INT_FULL pode ser usada para verificações de API em relação a versões principais e secundárias com a nova enumeração VERSION_CODES_FULL.

if (SDK_INT_FULL >= VERSION_CODES_FULL.[MAJOR or MINOR RELEASE]) {
  // Use APIs introduced in a major or minor release
}

Você também pode usar o método Build.getMinorSdkVersion() para acessar apenas a versão secundária do SDK.

val minorSdkVersion = Build.getMinorSdkVersion(VERSION_CODES_FULL.BAKLAVA)

Essas APIs ainda não foram finalizadas e estão sujeitas a alterações. Envie feedback se tiver alguma dúvida.

Experiência do usuário e interface do sistema

O Android 16 oferece aos desenvolvedores e usuários de apps mais controle e flexibilidade para configurar o dispositivo de acordo com as necessidades.

Atualizações de volta preditiva

Android 16 adds new APIs to help you enable predictive back system animations in gesture navigation such as the back-to-home animation. Registering the onBackInvokedCallback with the new PRIORITY_SYSTEM_NAVIGATION_OBSERVER allows your app to receive the regular onBackInvoked call whenever the system handles a back navigation without impacting the normal back navigation flow.

Android 16 additionally adds the finishAndRemoveTaskCallback() and moveTaskToBackCallback. By registering these callbacks with the OnBackInvokedDispatcher, the system can trigger specific behaviors and play corresponding ahead-of-time animations when the back gesture is invoked.

Retorno tátil mais completo

O Android expõe o controle do atuador háptico desde o início.

O Android 11 adicionou suporte a efeitos hápticos mais complexos que atuadores mais avançados podem oferecer com VibrationEffect.Compositions de primitivas semânticas definidas pelo dispositivo.

O Android 16 adiciona APIs hápticas que permitem que os apps definam as curvas de amplitude e frequência de um efeito háptico, abstraindo as diferenças entre os recursos do dispositivo.

Desempenho e bateria

O Android 16 apresenta APIs que ajudam a coletar insights sobre seus apps.

Criação de perfis acionados pelo sistema

O ProfilingManager foi adicionado no Android 15, permitindo que os apps solicitem a coleta de dados de perfil usando o Perfetto em dispositivos públicos no campo. No entanto, como esse perfil precisa ser iniciado pelo app, fluxos críticos, como inicializações ou ANRs, seriam difíceis ou impossíveis de capturar.

Para ajudar com isso, o Android 16 apresenta a criação de perfil acionado pelo sistema para ProfilingManager. Os apps podem registrar interesse em receber rastros de determinados gatilhos, como inicialização a frio reportFullyDrawn ou ANRs. Em seguida, o sistema inicia e interrompe um rastro em nome do app. Depois que o rastreamento for concluído, os resultados serão enviados para o diretório de dados do app.

Iniciar o componente no ApplicationStartInfo

ApplicationStartInfo foi adicionado no Android 15, permitindo que um app mostre os motivos para a inicialização do processo, o tipo de inicialização, os horários de inicialização, o controle de demanda e outros dados de diagnóstico úteis. O Android 16 adiciona getStartComponent() para distinguir qual tipo de componente acionou a inicialização, o que pode ser útil para otimizar o fluxo de inicialização do app.

Melhor introspecção de trabalho

A API JobScheduler#getPendingJobReason() retorna um motivo pelo qual um job pode estar pendente. No entanto, um job pode ficar pendente por vários motivos.

No Android 16, estamos lançando uma nova API JobScheduler#getPendingJobReasons(int jobId), que retorna vários motivos para um job estar pendente, devido a restrições explícitas definidas pelo desenvolvedor e restrições implícitas definidas pelo sistema.

Também estamos lançando JobScheduler#getPendingJobReasonsHistory(int jobId), que retorna uma lista das mudanças de restrição mais recentes.

Recomendamos usar a API para depurar por que seus jobs não estão sendo executados, principalmente se você notar taxas de sucesso reduzidas de determinadas tarefas ou tiver bugs na latência de determinada conclusão de job. Por exemplo, a atualização de widgets em segundo plano não ocorreu ou o job de pré-busca não foi chamado antes do início do app.

Isso também pode ajudar a entender melhor se determinados jobs não estão sendo concluídos devido a restrições definidas pelo sistema em vez de restrições definidas explicitamente.

Taxa de atualização adaptativa

A taxa de atualização adaptativa (ARR, na sigla em inglês), introduzida no Android 15, permite que a taxa de atualização da tela em hardwares com suporte se adapte à taxa de frames do conteúdo usando passos discretos de VSync. Isso reduz o consumo de energia e elimina a necessidade de alternar entre modos que podem causar instabilidade.

O Android 16 apresenta hasArrSupport() e getSuggestedFrameRate(int), além de restaurar getSupportedRefreshRates() para facilitar o uso do ARR nos apps. O RecyclerView 1.4 oferece suporte interno ao ARR quando ele é definido por um movimento rápido ou rolagem suave. Continuamos trabalhando para adicionar suporte ao ARR em mais bibliotecas do Jetpack. Este artigo sobre frame rate aborda muitas das APIs que podem ser usadas para definir a frame rate para que o app possa usar diretamente o ARR.

Conectividade

O Android 16 atualiza a plataforma para dar ao app acesso aos avanços mais recentes em comunicação e tecnologias sem fio.

Alcance com segurança aprimorada

O Android 16 adiciona suporte a recursos de segurança robustos na localização do Wi-Fi em dispositivos com suporte ao 802.11az do Wi-Fi 6, permitindo que os apps combinem a maior precisão, maior escalonabilidade e programação dinâmica do protocolo com aprimoramentos de segurança, incluindo criptografia baseada em AES-256 e proteção contra ataques MITM. Isso permite que ele seja usado com mais segurança em casos de uso de proximidade, como desbloquear um laptop ou uma porta de veículo. O 802.11az é integrado ao padrão Wi-Fi 6, aproveitando a infraestrutura e os recursos dele para uma adoção mais ampla e uma implantação mais fácil.

Mídia

O Android 16 inclui vários recursos que melhoram a experiência de mídia.

Melhorias no seletor de fotos

The photo picker provides a safe, built-in way for users to grant your app access to selected images and videos from both local and cloud storage, instead of their entire media library. Using a combination of Modular System Components through Google System Updates and Google Play services, it's supported back to Android 4.4 (API level 19). Integration requires just a few lines of code with the associated Android Jetpack library.

Android 16 includes the following improvements to the photo picker:

  • Embedded photo picker: New APIs that enable apps to embed the photo picker into their view hierarchy. This allows it to feel like a more integrated part of the app while still leveraging the process isolation that allows users to select media without the app needing overly broad permissions. To maximize compatibility across platform versions and simplify your integration, you'll want to use the forthcoming Android Jetpack library if you want to integrate the embedded photo picker.
  • Cloud search in photo picker: New APIs that enable searching from the cloud media provider for the Android photo picker. Search functionality in the photo picker is coming soon.

Privacidade

O Android 16 inclui vários recursos que ajudam os desenvolvedores de apps a proteger a privacidade do usuário.

Atualizações do app Conexão Saúde

A Conexão Saúde na prévia para desenvolvedores adiciona ACTIVITY_INTENSITY, um novo tipo de dados definido de acordo com as diretrizes da Organização Mundial da Saúde sobre atividade moderada e vigorosa. Cada registro exige o horário de início, o horário de término e se a intensidade da atividade é moderada ou intensa.

A Conexão Saúde também contém APIs atualizadas que oferecem suporte a registros de saúde. Isso permite que os apps leiam e gravem registros médicos no formato FHIR com consentimento explícito do usuário. Essa API está em um programa de acesso antecipado. Se você quiser participar, inscreva-se no nosso programa de acesso antecipado.

Sandbox de privacidade no Android

O Android 16 incorpora a versão mais recente do Sandbox de privacidade no Android, parte do nosso trabalho contínuo para desenvolver tecnologias em que os usuários sabem que a privacidade deles está protegida. Nosso site tem mais informações sobre o programa Beta do Sandbox de privacidade para desenvolvedores Android para ajudar você a começar. Confira o SDK Runtime, que permite que os SDKs sejam executados em um ambiente de execução dedicado separado do app que eles estão oferecendo, oferecendo proteções mais fortes em relação à coleta e ao compartilhamento de dados do usuário.