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:
- Mudanças de comportamento que afetam apps destinados ao Android 16
- Mudanças de comportamento que afetam todos os apps, independentemente da
targetSdkVersion
.
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.
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
O Android 16 adiciona novas APIs para ajudar a ativar animações de volta preditiva do sistema na
navegação por gestos, como a animação de volta à tela inicial. Registrar o
onBackInvokedCallback
com o novo
PRIORITY_SYSTEM_NAVIGATION_OBSERVER
permite que o app
receba a chamada onBackInvoked
normal sempre que o
sistema processa uma navegação de retorno sem afetar o fluxo normal de navegação
de retorno.
O Android 16 também adiciona o
finishAndRemoveTaskCallback()
e o
moveTaskToBackCallback
. Ao registrar esses callbacks
com o OnBackInvokedDispatcher
, o sistema pode acionar
comportamentos específicos e reproduzir animações antecipadas correspondentes quando o gesto
de voltar é invocado.
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
The JobScheduler#getPendingJobReason()
API returns a reason why a job
might be pending. However, a job might be pending for multiple reasons.
In Android 16, we are introducing a new API
JobScheduler#getPendingJobReasons(int jobId)
, which returns multiple
reasons why a job is pending, due to both explicit constraints set by the
developer and implicit constraints set by the system.
We're also introducing
JobScheduler#getPendingJobReasonsHistory(int jobId)
, which returns a list
of the most recent constraint changes.
We recommend using the API to help you debug why your jobs may not be executing, especially if you're seeing reduced success rates of certain tasks or have bugs around latency of certain job completion. For example, updating widgets in the background failed to occur or prefetch job failed to be called prior to app start.
This can also better help you understand if certain jobs are not completing due to system defined constraints versus explicitly set constraints.
Taxa de atualização adaptativa
Adaptive refresh rate (ARR), introduced in Android 15, enables the display refresh rate on supported hardware to adapt to the content frame rate using discrete VSync steps. This reduces power consumption while eliminating the need for potentially jank-inducing mode-switching.
Android 16 introduces hasArrSupport()
and
getSuggestedFrameRate(int)
while restoring
getSupportedRefreshRates()
to make it easier for your apps to take
advantage of ARR. RecyclerView
1.4 internally supports ARR when it is settling from a fling or
smooth scroll, and we're continuing our work to add ARR
support into more Jetpack libraries. This frame rate article covers
many of the APIs you can use to set the frame rate so that your app can directly
use 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
O seletor de fotos oferece uma maneira segura e integrada para os usuários concederem ao app acesso a imagens e vídeos selecionados do armazenamento local e da nuvem, em vez de toda a biblioteca de mídia. Usando uma combinação de componentes modulares do sistema pelas Atualizações do sistema do Google e os Serviços do Google Play, ele tem suporte ao Android 4.4 (nível 19 da API). A integração requer apenas algumas linhas de código com a biblioteca Android Jetpack associada.
O Android 16 inclui as seguintes melhorias no seletor de fotos:
- Seletor de fotos incorporado: novas APIs que permitem que os apps incorporem o seletor de fotos à hierarquia de visualização. Isso permite que ela pareça uma parte mais integrada do app, aproveitando o isolamento de processos que permite que os usuários selecionem mídia sem que o app precise de permissões muito amplas. Para maximizar a compatibilidade entre as versões da plataforma e simplificar a integração, use a próxima biblioteca Jetpack do Android se quiser integrar o seletor de fotos incorporado.
- Pesquisa na nuvem no seletor de fotos: novas APIs que permitem a pesquisa do provedor de mídia na nuvem para o seletor de fotos do Android. A funcionalidade de pesquisa no seletor de fotos será lançada em breve.
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.