O Android 17 chegou

Leitura de 13 minutos
Matthew McCullough
Vice-presidente de gerenciamento de produtos, Android Developer

Hoje, estamos lançando o Android 17, que está disponível na maioria dos dispositivos Pixel compatíveis. Nos próximos meses, vamos lançar novos dispositivos com o Android 17.

AfD-Android-17.gif

O Android 17 marca o início da nossa transição para um sistema de inteligência, colocando seus apps no centro. O Android está mudando para padrões de desenvolvimento adaptáveis, introduzindo o redimensionamento obrigatório de telas grandes e oferecendo privacidade, segurança, mídia, câmera e desempenho de última geração. Vamos abordar tudo isso nesta postagem, além de mostrar como estamos reunindo ferramentas, bibliotecas e habilidades de agentes de última geração para ajudar seus apps a aproveitar essa oportunidade.

Ao longo do ano passado, desde nosso canal Canary até as versões Beta, colaboramos com muitos de vocês na comunidade de desenvolvedores para criar uma plataforma em que você e seus usuários possam confiar. Para isso, este momento marca a disponibilidade do código-fonte no Android Open Source Project (AOSP). Isso permite que você examine o código-fonte para entender melhor como o Android funciona.

Vamos nos aprofundar no Android 17.

Um sistema de inteligência

Com a integração profunda entre hardware, software e IA, estamos transformando o Android de um sistema operacional em um sistema de inteligência. O objetivo é oferecer novas experiências úteis que antecipem as necessidades dos usuários e gerem mais oportunidades de engajamento com seus apps. Para isso, o Android 17 expande os recursos do AppFunctions, uma API de plataforma com uma biblioteca correspondente do Jetpack. Ele permite que você contribua com os recursos exclusivos do seu app como "ferramentas" orquestráveis para o MCP do Android, o equivalente no dispositivo do Protocolo de Contexto de Modelo. Os agentes e assistentes de IA (como o Google Gemini) podem descobrir e executar AppFunctions para realizar fluxos de trabalho em nome do usuário com acesso direto ao estado local do app.

A biblioteca Jetpack, atualmente em versão Alfa, facilita a adição de AppFunctions. Basta anotar uma classe e adicionar comentários KDoc.

/**
 *   A note app's [AppFunction]s.
 */
class NoteFunctions(
    private val noteRepository: NoteRepository
) {
    /**
     *   Adds a new note to the app.
     *
     *   @param appFunctionContext The execution context.
     *   @param title The title of the note.
     *   @param content The note's content.
     */
    @AppFunction(isDescribedByKDoc = true)
    suspend fun createNote(
        appFunctionContext: AppFunctionContext,
        title: String,
        content: String
    ): Note {
        return noteRepository.createNote(title, content)
    }
}

Também lançamos uma habilidade de agente do AppFunctions que analisa os principais fluxos de trabalho do seu app, gera automaticamente o código Kotlin necessário, otimiza seus KDocs para chamadas de ferramentas de LLM e fornece comandos ADB para testes e depuração.

No momento, a integração do Gemini está em prévia privada com trusted testers, mas você já pode começar a preparar seus apps. Além dos comandos ADB para executar suas AppFunctions, fornecemos um app de agente de teste que inclui uma interface para descobrir e executar suas AppFunctions e simular uma integração de agente de IA. Participe do nosso programa de acesso antecipado à integração em goo.gle/eap-af para ter a chance de estar entre os primeiros apps a implantar AppFunctions na produção.

Priorize a adaptação

Seus usuários não dependem mais de um único formato. Eles transitam entre smartphones, dispositivos dobráveis, tablets, laptops, telas automotivas e ambientes imersivos de XR. Agora, com mais de 580 milhões de dispositivos de tela grande nas mãos dos usuários e o próximo lançamento do Googlebooks, a próxima geração do ChromeOS criada na pilha do Android, o adaptável não é mais apenas uma meta técnica. É uma grande oportunidade de alcançar usuários altamente engajados, e esse é um dos motivos pelos quais estamos mudando para um padrão de desenvolvimento adaptável.

Sem restrições de redimensionamento/orientação em telas grandes

Para garantir que os apps ofereçam uma experiência premium em todos os formatos, incluindo dispositivos móveis executados no modo de computador em telas conectadas, o Android 17 (nível 37 da API) remove a opção de desativação do desenvolvedor para restrições de orientação e redimensionamento em dispositivos de tela grande (sw > 600 dp) para apps destinados ao nível 37 da API. O sistema vai ignorar atributos legados do manifesto e APIs de tempo de execução, incluindo screenOrientation, setRequestedOrientation(), resizeableActivity=false e restrições de proporção (minAspectRatio/maxAspectRatio). Os jogos (com base na categoria do app no Google Play) continuam isentos. O app precisa estar pronto para se adaptar a qualquer tamanho de janela, respeitar a postura preferida do dispositivo pelo usuário e oferecer suporte nativo ao modo de janela livre.

Multitarefa de última geração: balões de apps, barra de balões e PiP interativo para computador

O Android 17 apresenta novos recursos de janela que redefinem a forma como os usuários realizam várias tarefas ao mesmo tempo, exigindo ainda mais flexibilidade de layout dos seus apps:

  • Balões de apps : além da API de balões de mensagens, agora os usuários podem transformar qualquer app em um balão flutuante tocando e mantendo pressionado o ícone dele no iniciador. Esse recurso está disponível em smartphones, dispositivos dobráveis e tablets, permitindo multitarefas leves para qualquer fluxo de trabalho.
  • A barra de balões:em telas grandes (tablets e dispositivos dobráveis), a barra de tarefas do sistema agora inclui uma barra de balões dedicada para organizar, fazer a transição entre e fixar esses balões de apps flutuantes.
  • PiP interativo para computador:em ambientes de computador, o Android 17 apresenta o picture-in-picture (PiP) interativo. Ao contrário das janelas picture-in-picture tradicionais, que são somente leitura, essas janelas fixadas permanecem totalmente interativas enquanto ficam sempre na frente de outras janelas de aplicativos.
Bubbles (1).gif
Balões e barra de balões em ação

Atualizações da recriação de atividades

Para evitar perda de estado e travamentos disruptivos, o Android 17 atualiza o comportamento padrão da recriação de atividades. O sistema não vai mais reiniciar atividades por padrão para mudanças de configuração típicas que não exigem uma atualização completa da interface (incluindo CONFIG_KEYBOARD, CONFIG_KEYBOARD_HIDDEN, CONFIG_NAVIGATION, CONFIG_TOUCHSCREEN e CONFIG_COLOR_MODE).

Em vez disso, as atividades em execução vão receber essas atualizações via onConfigurationChanged(), permitindo transições suaves. Se o aplicativo depender explicitamente de uma reinicialização completa para recarregar recursos dessas mudanças, agora você precisará ativar explicitamente usando o novo atributo de manifesto android:recreateOnConfigChanges.

Continuar em…

O Android 17 adiciona o recurso "Continuar em" para ajudar os usuários a transferir uma tarefa entre dispositivos Android sem problemas. O usuário vê uma sugestão do app aberto mais recentemente no dispositivo móvel na barra de tarefas do tablet, oferecendo um toque para iniciar o app e o link direto de onde parou. O recurso "Continuar no" pode oferecer suporte a transições de app para a Web, incluindo o uso da Web se o app não estiver instalado.

Continue On.png
Sugestão de transferência em um tablet
class MyHandoffActivity : Activity() {

    ...

  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    // Do stuff
    ...
    // Enable handoff
    setHandoffEnabled(true, null)
  }

  // Override and implement onHandoffActivityDataRequested
  override fun onHandoffActivityDataRequested(handoffRequestInfo: HandoffActivityDataRequestInfo) : HandoffActivityData {
    // Create and return handoff data
  }
}

Priorize a adaptabilidade com o Jetpack Compose

Para ajudar você a adaptar seus apps e atender aos novos requisitos do Android 17, lançamos a habilidade adaptativa do Jetpack Compose. Esse fluxo de trabalho de desenvolvedor com tecnologia de IA ajuda você a implementar as melhores práticas adaptáveis:

  • Navegação adaptável:faça a transição automática entre barras de navegação na parte de baixo em dispositivos móveis e barras de navegação ancoradas na borda em telas grandes usando NavigationSuiteScaffold da biblioteca adaptável do Material 3.
  • Layouts de vários painéis:implemente layouts de detalhes e listas e painéis de suporte nativamente usando as cenas de navegação 3 (ListDetailSceneStrategy e SupportingPaneSceneStrategy) em vez de transações de fragmentos frágeis.
  • APIs FlexBox e Grid:use os componentes de layout dinâmico do Compose 1.11 para ajustar facilmente os intervalos de linha e coluna em tempo real, garantindo que seu conteúdo sempre preencha o espaço de maneira adequada.
  • Entrada avançada sem toque:aproveite o suporte aprimorado do trackpad e do mouse do Compose 1.11, incluindo anéis de foco nativos e novas APIs (como TrackpadInjectionScope e performTrackpadInput) para testar e oferecer facilmente uma verdadeira experiência de "laptop" no Google Livros e no modo desktop.
  • Estados de janela dinâmicos:use o modelo de estado reativo do Compose para adaptar sua interface de maneira integrada quando o app passa de tela cheia para uma bolha de app flutuante ou uma janela picture-in-picture interativa no computador, garantindo uma experiência premium mesmo em dimensões mínimas.

O Android prioriza o Compose

O Compose oferece a maneira mais fácil de criar apps adaptáveis, e esse é apenas um dos muitos motivos para acreditarmos que toda a interface do Android deve ser criada com o Compose. Por isso, o desenvolvimento para Android agora é com o Compose em primeiro lugar. Todas as novas APIs, bibliotecas, ferramentas e orientações para desenvolvedores do Android serão criadas exclusivamente para o Jetpack Compose. Os componentes de visualização legados (no pacote android.widget) e as bibliotecas Jetpack baseadas em visualização (como Fragments, RecyclerView e ViewPager) agora estão em modo de manutenção. Eles vão receber apenas correções de bugs críticos, e não novos recursos.


DICA: tudo pronto para migrar? Use nossa habilidade de migração de XML para Compose com tecnologia de IA para analisar automaticamente seus layouts de visualização legados e convertê-los em código do Compose altamente adaptável.


Desempenho e eficiência

O desempenho do app significa uma interface do usuário fluida, tempos de inicialização rápidos e multitarefa eficiente. O Android 17 tem melhorias significativas em todas essas áreas.

Limites de memória para apps

O uso da memória é um dos fundamentos silenciosos do desempenho geral. Quando um aplicativo em primeiro plano ou serviço cresce sem controle, o gerenciamento de memória aumenta o uso da CPU e da bateria e acaba levando ao encerramento de outros apps em cache e tarefas em segundo plano que funcionam bem, o que força inicializações a frio mais lentas e prejudica a multitarefa. 

A partir do Android 17, o sistema vai aplicar limites rígidos de memória para os apps com base na RAM total de um dispositivo, encerrando abruptamente os processos ofensivos. Novidades para ajudar você a navegar por esses requisitos mais rigorosos:

  • Otimizador do R8: o  otimizador do R8 reduz significativamente o consumo de memória do bytecode do app ao reduzir classes, métodos e campos para nomes mais curtos e remover código e recursos não utilizados. Use o R8 no modo completo com o novo analisador de configuração do R8 para garantir que seu app esteja aproveitando ao máximo o R8.
R8 Configuration Analyzer.png
O analisador de configuração do R8
  • LeakCanary no Android Studio Panda : agora o criador de perfil tem integração nativa do LeakCanary como uma tarefa dedicada, totalmente integrada ao seu ambiente de desenvolvimento integrado e código-fonte.
  • ApplicationExitInfo:se o app for encerrado por esses limites, getDescription() de ApplicationExitInfo vai retornar "MemoryLimiter:AnonSwap".
  • Detecção de anomalias no dispositivo:como parte do ProfilingManager, você pode aproveitar o perfil baseado em gatilhos usando TRIGGER_TYPE_ANOMALY para capturar automaticamente despejos de heap quando o limite de memória for atingido.
val profilingManager = applicationContext
   .getSystemService(ProfilingManager::class.java)

val triggers = ArrayList<ProfilingTrigger>().apply {
  add(ProfilingTrigger.Builder(
    ProfilingTrigger.TRIGGER_TYPE_ANOMALY).build())
}
profilingManager.addProfilingTriggers(triggers)

Além disso, estamos trabalhando para mostrar mais métricas de memória em campo no Google Play Console.

Coleta de lixo geracional

O Android 17 introduz coletas de geração jovem mais frequentes e menos intensivas em recursos no coletor de lixo de marcação e compactação simultâneas (GC) do ART. Ao separar objetos de curta duração dos estáveis e de longa duração, o sistema executa varreduras frequentes e leves da "geração jovem" em vez de verificações completas e caras do heap, reduzindo drasticamente o uso da CPU, o consumo de energia e a instabilidade da interface. Nossos testes mostraram melhorias significativas na interferência do GC com as linhas de execução do aplicativo e uma redução no tamanho máximo do conjunto residente de memória (RSS, na sigla em inglês). As melhorias do ART também estão disponíveis para mais de um bilhão de dispositivos com o Android 12 (nível 31 da API) e versões mais recentes pelas atualizações do sistema do Google Play.

MessageQueue sem bloqueio

Para apps destinados ao SDK 37 ou mais recente, o android.os.MessageQueue principal agora implementa uma arquitetura sem bloqueio, reduzindo significativamente os frames perdidos, melhorando o tempo de inicialização do app e melhorando radicalmente o desempenho de filas ocupadas em cenários multithread. Observação: isso pode interromper apps que usam reflexão em campos e métodos MessageQueue particulares. As APIs peekWhen e poll foram adicionadas ao TestLooperManager para testes de instrumentação sem depender dos internos do MessageQueue

Campos finais estáticos agora são realmente finais

A partir do Android 17, os apps destinados ao SDK 37 ou mais recente não poderão modificar campos "static final", permitindo que o tempo de execução aplique otimizações de desempenho de maneira mais agressiva. Uma tentativa de fazer isso por reflexão (ou reflexão profunda) vai gerar uma IllegalAccessException. 

Modificá-los usando a família de métodos SetStatic<Type>Field da JNI vai falhar imediatamente o aplicativo.

Restrições de visualização de notificações personalizadas

Para reduzir o uso da memória, estamos restringindo ainda mais o tamanho das visualizações de notificações personalizadas. Essa atualização corrige uma brecha que permite que os apps ignorem os limites atuais usando URIs. Esse comportamento é controlado pela versão do SDK de destino e entra em vigor para apps destinados à API 37 e mais recentes.

Privacidade e segurança

Manter a confiança do usuário é fundamental para o ecossistema Android. O Android 17 apresenta recursos robustos que protegem dados sensíveis e simplificam as experiências do usuário.

Opções que preservam a privacidade

Historicamente, os apps exigiam permissões amplas e permanentes para acessar informações como contatos, localização precisa e arquivos de mídia. O Android 17 continua a mudança para escolhas que preservam a privacidade e concedem acesso temporário e baseado em sessão apenas aos dados que o usuário seleciona explicitamente:

  • Seletor de contatos no nível do sistema:usando o ACTION_PICK_CONTACTS, os apps podem solicitar acesso temporário apenas a campos específicos (por exemplo, e-mail ou número de telefone) escolhidos pelo usuário, eliminando a necessidade da permissão ampla READ_CONTACTS. Ele também oferece suporte total à separação de perfis de trabalho/pessoais.
  • Proporção personalizável do seletor de fotos:usando PhotoPickerUiCustomizationParams, é possível personalizar o seletor de fotos do sistema para mostrar miniaturas no modo retrato. Isso é perfeito para apps que sempre mostram fotos e vídeos na vertical, como apps de redes sociais baseados em vídeo.
  • Botão de localização renderizado pelo sistema:um novo botão de localização renderizado pelo sistema que pode ser incorporado ao app concede acesso ao local exato apenas para a sessão atual.
  • API EyeDropper:uma nova API no nível do sistema, ACTION_OPEN_EYE_DROPPER, permite que seu app crie um conta-gotas com tecnologia do sistema, permitindo que o usuário selecione cores de qualquer pixel na tela. Isso oferece uma experiência segura e que preserva a privacidade de seleção de cores, eliminando a necessidade de permissões amplas e sensíveis de captura de tela ou projeção de mídia.
val eyeDropperLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
   if (result.resultCode == Activity.RESULT_OK) {
       val color = result.data?.getIntExtra(Intent.EXTRA_COLOR, Color.BLACK)
       // Use the picked color in your app
   }
}
fun launchColorPicker() {
   val intent = Intent(Intent.ACTION_OPEN_EYE_DROPPER)
   eyeDropperLauncher.launch(intent)
}
Conta-gotas Tester.webp
Escolher uma cor em qualquer lugar da tela com o conta-gotas do sistema

Acesso à rede local

Os apps destinados ao Android 17 agora exigem a permissão de execução ACCESS_LOCAL_NETWORK ou o uso de seletores de dispositivos mediados pelo sistema que preservam a privacidade para comunicação de rede local, como falar com dispositivos de casa inteligente ou receptores de transmissão. Como ACCESS_LOCAL_NETWORK se enquadra no grupo de permissões NEARBY_DEVICES, os usuários que já concederam outras permissões NEARBY_DEVICES não vão receber outra solicitação. 

Proteção de OTP por SMS

O Android 17 amplia a proteção de senha única (OTP) por SMS, atrasando o acesso às mensagens SMS por três horas:

Exceções:apps padrão de SMS, assistentes e complementares conectados estão isentos. Recomendamos que os apps migrem para as APIs SMS Retriever ou Consentimento do usuário de SMS.

Criptografia pós-quântica (PQC)

O Android 17 está pronto para a próxima geração de segurança criptográfica:

  • Integração do keystore:os dispositivos compatíveis podem gerar chaves ML-DSA (algoritmo de assinatura digital baseado em módulo-reticulado) em hardware seguro para produzir assinaturas resistentes a ataques quânticos, expostas por APIs JCA padrão.
  • Assinatura híbrida de APK:apresentamos o esquema de assinatura de APK v3.2, que combina assinaturas clássicas com assinaturas ML-DSA para proteger a entrega de apps.

Carregamento dinâmico de código nativo mais seguro

Se o app for direcionado ao SDK 37 ou versões mais recentes, a proteção de carregamento dinâmico de código (DCL) mais seguro introduzida no Android 14 para arquivos DEX e JAR agora se estende às bibliotecas nativas. Todos os arquivos nativos carregados usando System.load precisam ser marcados como somente leitura. Caso contrário, o sistema vai gerar UnsatisfiedLinkError.

Proteção de senha mais inteligente para entradas físicas

Com o Android 17, estamos tornando mais seguro inserir senhas, PINs e outros dados confidenciais ao usar um teclado físico. Para isso, não mostramos mais o último caractere digitado por padrão.

Os usuários ainda podem personalizar essas configurações de exibição de acordo com as preferências deles. A disponibilidade pode variar de acordo com o fabricante do dispositivo.

Essas proteções de privacidade aprimoradas são compatíveis automaticamente com os componentes do SDK integrado do Android e serão compatíveis com o Compose 1.12 para SecureTextFields

Hide First Letter.gif
Proteção de senha mais inteligente para entradas físicas

Recursos de mídia e câmera que capacitam criadores de conteúdo e agradam os usuários

O Android 17 apresenta novos recursos para criadores de conteúdo que dão acesso a câmeras e mídia de qualidade profissional, além de melhorar a experiência dos consumidores.

  • Eclipsa Video: padrão de vídeo HDR criado com base na especificação SMPTE ST 2094-50, que introduz novos metadados para ajudar os dispositivos a adaptar o conteúdo ao espaço livre de exibição e às condições de luz ambiente, além de melhorar a exibição simultânea de conteúdo padrão e HDR.
  • Formato de imagem RAW14:o novo suporte ao formato de imagem RAW14 permite que seu app de câmera profissional capture o mais alto nível de detalhes e profundidade de cor de sensores de câmera compatíveis.
  • Extensões de câmera definidas pelo fornecedor:as extensões definidas pelo fornecedor permitem que os parceiros de hardware definam e implementem modos de extensão de câmera personalizados, oferecendo acesso aos melhores e mais recentes recursos de câmera.
  • Codificador de software HE-AAC estendido: um novo codificador de software HE-AAC estendido fornecido pelo sistema, compatível com taxas de bits baixas e altas usando codificação unificada de fala e áudio, oferecendo qualidade do áudio significativamente melhor para mensagens de voz em condições de baixa largura de banda, incluindo suporte para metadados de intensidade.
  • Versatile Video Coding (H.266):  permite que os OEMs adicionem suporte a codecs definindo o tipo MIME video/vvc em MediaFormat, adicionando novos perfis VVC em MediaCodecInfo e integrando o suporte ao MediaExtractor.
  • Tipo de dispositivo de câmera:novas APIs que consultam o tipo de dispositivo subjacente para identificar se uma câmera é um hardware integrado, uma webcam USB externa ou uma câmera virtual.
  • Qualidade constante para gravação de vídeo:setVideoEncodingQuality em MediaRecorder configura um modo de qualidade constante (CQ) para codificadores de vídeo, garantindo fidelidade visual uniforme em todo o vídeo.

Melhor suporte para aparelhos auditivos

  • Suporte a aparelhos auditivos com Bluetooth LE Audio:agora o Android inclui uma categoria de dispositivo específica para aparelhos auditivos com Bluetooth de baixa energia (BLE) Audio com a nova constante AudioDeviceInfo.TYPE_BLE_HEARING_AID. Assim, seu app pode distinguir aparelhos auditivos de fones de ouvido comuns para oferecer uma experiência personalizada aos usuários com dispositivos de audição assistiva.
  • Roteamento granular de áudio para aparelhos auditivos:o Android 17 permite que os usuários gerenciem de forma independente onde sons específicos do sistema são reproduzidos. É possível direcionar notificações, toques e alarmes para aparelhos auditivos conectados ou para o alto-falante integrado do dispositivo, evitando interrupções indesejadas no ouvido e mantendo uma conexão Bluetooth para apps de gerenciamento de aparelhos auditivos.

CameraX e Media3

O CameraX e o Media3 foram atualizados para o Android 17. Eles estão lá para fazer o trabalho pesado, suavizando as arestas do desenvolvimento de mídia e simplificando a criação de captura de câmera confiável, reprodução de mídia suave e experiências de edição criativas e complexas. 

Lançamos uma habilidade de agente que pode migrar implementações legadas de câmera do Android (APIs Camera1 ou Camera2 brutas) para o CameraX.  

Observação: atualize a versão do CameraX para 1.5.2 ou 1.6.0+ para evitar uma falha relacionada a um modo de faixa dinâmica adicionado em dispositivos Android 17.

Prepare seus apps, bibliotecas, ferramentas e mecanismos de jogo.

Se você desenvolve um SDK do Android, uma biblioteca, uma ferramenta ou um mecanismo de jogo, é fundamental preparar as atualizações necessárias agora para evitar que os desenvolvedores de apps e jogos downstream sejam bloqueados por problemas de compatibilidade e permitir que eles segmentem os recursos mais recentes do SDK. Informe seus desenvolvedores downstream se forem necessárias atualizações para oferecer suporte total ao Android 17.

O teste envolve instalar o app de produção ou um app de teste usando sua biblioteca ou mecanismo pelo Google Play ou outros meios em um dispositivo ou emulador que execute o Android 17 Beta 4. Teste todos os fluxos do app e procure problemas funcionais ou de interface. Cada versão do Android contém mudanças na plataforma que melhoram a privacidade, a segurança e a experiência geral do usuário. Revise as mudanças no comportamento que afetam apps executados e direcionados ao Android 17 para focar nos testes, incluindo o seguinte:

  • Redimensionamento em telas grandes : depois de segmentar o Android 17 (SDK 37), não será mais possível desativar a manutenção das restrições de orientação, redimensionamento e proporção em telas grandes.
  • Carregamento dinâmico de código:se o app for direcionado ao SDK 37 ou mais recente, a proteção de carregamento dinâmico de código (DCL) mais seguro introduzida no Android 14 para arquivos DEX e JAR agora se estende a bibliotecas nativas. Todos os arquivos nativos carregados usando System.load() precisam ser marcados como somente leitura. Caso contrário, o sistema vai gerar um UnsatisfiedLinkError.
  • Ativar a CT por padrão:a transparência dos certificados (CT) está ativada por padrão. No Android 16, a CT está disponível, mas os apps precisavam ativar.
  • Proteções de rede local : os apps destinados ao SDK 37 ou mais recente têm o acesso à rede local bloqueado por padrão. Se possível, use seletores que preservam a privacidade e a nova permissão ACCESS_LOCAL_NETWORK para acesso amplo e persistente.
  • Reforço da proteção de áudio em segundo plano:a partir do Android 17, o framework de áudio impõe restrições às interações de áudio em segundo plano, incluindo reprodução de áudio, solicitações de seleção de áudio e APIs de mudança de volume. Com base no seu feedback, fizemos algumas mudanças desde a versão Beta 2, incluindo o controle de targetSDK durante a execução em primeiro plano e a isenção do áudio de alarmes. Confira todos os detalhes no guia atualizado.
  • Declaração de acesso à NPU:os apps destinados ao Android 17 que precisam acessar diretamente a NPU precisam declarar  FEATURE_NEURAL_PROCESSING_UNIT no manifesto para evitar o bloqueio do acesso à NPU. Isso inclui apps que usam o delegado da NPU LiteRT, SDKs específicos do fornecedor e a NNAPI descontinuada.

Começar a usar o Android 17

Seu dispositivo Pixel vai receber o Android 17 em breve, caso você ainda não tenha participado do Android Beta. Se você não tiver um dispositivo Pixel, poderá usar as imagens do sistema de 64 bits com o Android Emulator no Android Studio. Se você estiver usando o Android 17 Beta 4.1 e ainda não tiver testado o Android 17 QPR1 Beta, saia do programa para receber a versão de lançamento do Android 17 por atualização over the air.

Como instalar o Android 17 Beta em dispositivos parceiros

O Android 17 está disponível na versão Beta para smartphones, tablets e dispositivos dobráveis de parceiros, incluindo Honor, iQOO, Lenovo, OnePlus, OPPO, Realme, Sharp, vivo e Xiaomi.

android-17-beta-partners.jpg

Para ter a melhor experiência de desenvolvimento com o Android 17, recomendamos usar o build Canary mais recente do Android Studio Quail. Depois de configurar, faça o seguinte:

Agradecemos novamente a todos que participaram do programa Beta e da prévia para desenvolvedores do Android. Estamos ansiosos para ver como seus apps vão aproveitar as atualizações do Android 17 e planejamos trazer atualizações em uma cadência de lançamento rápida daqui para frente.

Para informações completas sobre o Android 17, acesse o site para desenvolvedores do Android 17.

Escrito por:

Continuar lendo