Prévia do desenvolvedor do Android 11

O Google lançou hoje o Android 11 Developer Preview 1. Aqui estão todos os novos recursos da plataforma e mudanças de comportamento que os desenvolvedores precisam saber.

Hoje, o Google anunciado o primeiro Android 11 Developer Preview em uma postagem do blog oficial. A empresa já divulgou imagens do sistema para qualquer desenvolvedor interessado em instalar o novo sistema operacional Android. Recomendamos que você instale-o o mais rápido possível para testar seu aplicativo em relação às mudanças comportamentais e recursos de plataforma mais recentes no Android 11. Antes de mergulhar na documentação, aqui está um resumo de todos os principais novos recursos focados no desenvolvedor no primeiro Android 11 Developer Preview.

Novos recursos de rede/conectividade

A conectividade 5G estará na moda neste ano e no próximo: a Samsung está disponibilizando amplamente os smartphones habilitados para 5G com a série Galaxy S20 enquanto Qualcomm continua elevando a fasquia na conectividade de smartphones 5G. Com o Android 11, o Google está adicionando duas novas APIs para preparar os desenvolvedores para a realidade da conectividade 5G. Não apenas essas, mas outras APIs baseadas em conectividade também estão ganhando polimento.

API estimador de largura de banda

Google é atualizando o ConnectivityManager para facilitar a verificação da largura de banda downstream e upstream sem a necessidade de pesquisar a rede ou de que os desenvolvedores calculem suas próprias estimativas. Se o modem não oferecer suporte ao fornecimento desses dados, a API fará uma estimativa padrão com base na conexão de rede existente.

API de medição dinâmica

Essa API permite que os desenvolvedores verifiquem se o usuário está em uma conexão ilimitada e, em caso afirmativo, ofereçam uma resolução mais alta ou mídia de qualidade que poderia usar muito mais dados. Com o Android 11, essa API foi estendida para incluir redes celulares, para que os desenvolvedores possam agora identificar usuários cujas operadoras oferecem serviços de dados verdadeiramente ilimitados em suas redes 5G.

Melhorias no serviço de triagem de chamadas

O Google introduziu o conceito de “funções” no Android 10. Eles são um pouco semelhantes aos “aplicativos padrão”, pois conceder uma função a um aplicativo permite que ele tenha acesso a determinadas APIs. Por exemplo, há um função de triagem de chamadas que permite que um aplicativo de terceiros bloqueie ou identifique chamadas recebidas antes que o usuário tome conhecimento delas. No Android 11, os aplicativos de triagem de chamadas agora podem receber as chamadas recebidas MEXER/BATER status de verificação como parte dos detalhes da chamada. Eles podem então personalizar uma tela pós-chamada fornecida pelo sistema para permitir que os usuários executem ações como marcar uma chamada como spam ou adicionar o chamador aos contatos. Isso ajudará os aplicativos de triagem de chamadas a fazer mais pelo usuário, simplificando as reações após uma chamada desconhecida.

Melhorias na API de sugestões de Wi-Fi

O API de sugestão de Wi-Fi agora permitirá que aplicativos de gerenciamento de conectividade tenham maior capacidade de gerenciar suas próprias redes. Por exemplo, os aplicativos de gerenciamento de conectividade agora poderão forçar uma desconexão removendo uma rede sugestão, gerenciar redes Passpoint, receber mais informações sobre a qualidade das redes conectadas e mais.

Aprimoramentos de senha

O Wi-Fi Passpoint, segundo a Wi-Fi Alliance, é uma solução que agiliza o acesso da rede a hotspots Wi-Fi ao permitindo descoberta e seleção automática de rede, simplificando a inscrição on-line e habilitando pontos de acesso perfeitamente roaming. O Android 11 permitirá a aplicação e notificação sobre a data de expiração de um Perfil de passagem, bem como oferecer suporte à especificação de nome comum no perfil e permitir CAs autoassinadas para perfis do Passpoint R1. E como mencionado acima, a API de sugestão de Wi-Fi também permitirá que aplicativos de conectividade gerenciem redes Passpoint.

Novos recursos de UI/UX

Suporte de interface do usuário para exibições perfuradas e em cascata

Os OEMs de smartphones Android lideram a inovação no espaço de hardware, e uma das mudanças de hardware mais notáveis ​​que vimos nos últimos tempos é a introdução de recortes de tela. A série Samsung Galaxy S20, por exemplo, apresenta telas perfuradas centralizadas. Telas perfuradas, ou telas pinhole, como o Google as chama, são telas que possuem uma câmera cercado por pixels de exibição em toda a borda - quase como se alguém usasse um furador na mostrar. Outra inovação do display é o display em cascata: displays que possuem uma curva de display bem mais pronunciada nas bordas laterais, transbordando para as laterais do aparelho.

Esquerda: O Samsung Galaxy S20+ com uma tela perfurada centralizada. À direita: Huawei Mate 30 Pro e Vivo Nex 3 5G com telas curvas em “cascata”.

O Android 11 agora está estendendo o suporte para telas perfuradas e telas em cascata por meio do API de recorte de exibição. Se os desenvolvedores quiserem, a API também permitirá que eles criem aplicativos que podem usar toda a tela em cascata, incluindo as bordas, com inserções para ajudar a gerenciar as interações próximas às bordas.

Seção de conversas dedicadas nas notificações

Muitos de nós recebemos muitas notificações por dia, mas nem todas as notificações são igualmente importantes. Geralmente, as notificações de aplicativos de mensagens tendem a ser mais importantes do que outras notificações originadas de aplicativos. Para esse fim, o Android 11 está introduzindo uma seção de conversas dedicada na aba de notificações. Isso permitirá que os usuários encontrem facilmente suas conversas em andamento com outras pessoas em seus aplicativos favoritos e ajudará os desenvolvedores a criar experiências de conversação mais profundas.

API de bolhas

No ano passado, havíamos apontado como o API Bubbles introduzida no Android 10 substituirá a API de sobreposição em uma versão futura do Android. Com o Android 11, o Google está incentivando os desenvolvedores de aplicativos de mensagens e bate-papo a fazerem a transição para o Bubbles para manter as conversas visíveis e acessíveis quando um usuário estiver realizando multitarefa em seu telefone.

Inserção de imagem em respostas de notificação

O Android 11 agora permitirá que aplicativos que suportam copiar/colar imagens permitam que seus usuários insiram essas imagens diretamente na resposta embutida no notificação, o que significa que os usuários podem manter pressionado e ter a opção Colar do menu de contexto disponível ao responder a uma notificação do sombra de notificação. O Google Chrome já estava trabalhando para suporte para copiar imagens diretamente para a área de transferência do Android, e o Gboard estava se preparando para permitir que os usuários cole imagens diretamente em mídias sociais e aplicativos de mensagens. O Google agora menciona que esses recursos estarão disponíveis no Android 11 Developer Preview 1.

Melhorias de imagem e câmera

Drawables animados HEIF

A API ImageDecoder agora permitirá que os desenvolvedores decodifiquem e renderizem animações de sequência de imagens armazenadas em HEIF (formato de imagem de alta eficiência) arquivos. Isso permitirá que os desenvolvedores usem ativos de alta qualidade e, ao mesmo tempo, minimizem o impacto nos dados da rede e no tamanho do APK. Oferta de sequências de imagens HEIF reduções drásticas no tamanho do arquivo em comparação com GIFs, portanto o HEIF está em uma boa posição para ser uma alternativa melhor em casos de uso baseados em dispositivos móveis. Os desenvolvedores poderão exibir sequências de imagens HEIF em seus aplicativos chamando decodeDrawable com uma fonte HEIF. Se a fonte contiver uma sequência de imagens, um AnimatedImageDrawable será retornado.

Decodificador de imagem nativo

O Android 11 está introduzindo novas APIs NDK que permitirão que os aplicativos decodifiquem e codifiquem imagens de código nativo para gráficos ou pós-processamento, mantendo um tamanho de APK menor, pois não há necessidade de agrupar um arquivo externo biblioteca. O decodificador nativo também aproveita o processo do Android para atualizações contínuas de segurança da plataforma.

Silenciar durante a captura da câmera

Novas APIs permitem que os aplicativos silenciem a vibração de toques, alarmes e notificações quando uma sessão de captura de câmera estiver ativa, como essas vibrações tendem a causar tremores na gravação, o que pode ser amplificado ainda mais se o usuário estiver aplicando zoom em.

Modos bokeh

Os aplicativos agora podem usar tags de metadados para ativar modos bokeh em solicitações de captura de câmera em dispositivos compatíveis.

Decodificação de vídeo de baixa latência

Os aplicativos agora podem usar novas APIs para verificar e configure a reprodução de baixa latência para um codec específico.

O vídeo de baixa latência é fundamental para aplicativos e serviços de streaming de vídeo em tempo real, como Estádios. Codecs de vídeo que suportam reprodução de baixa latência retornam o primeiro quadro do fluxo o mais rápido possível após o início da decodificação.

Modo HDMI de baixa latência

Novas APIs agora permitem que os aplicativos verifiquem e solicitem o modo automático de baixa latência (também conhecido como modo de jogo) em monitores externos e TVs. Neste modo, o monitor ou TV desativa o pós-processamento gráfico para minimizar latência.

Diversas APIs novas e atualizadas

API de Redes Neurais 1.3

A API de redes neurais (NNAPI) foi projetada para executar operações computacionalmente intensivas para aprendizado de máquina em dispositivos Android. Com o Android 11, o Google está expandindo as operações e os controles disponíveis para desenvolvedores nesta API:

  • APIs de qualidade de serviço oferecem suporte a prioridade e tempo limite para execução do modelo.
  • As APIs de domínio de memória reduzem a cópia e a transformação da memória para execução consecutiva do modelo.
  • Suporte expandido à quantização por meio de quantização assimétrica de número inteiro assinado em que inteiros assinados são usados ​​no lugar de números flutuantes para permitir modelos menores e inferência mais rápida.

Compatibilidade de aplicativos

Novas atualizações de plataforma podem trazer possíveis problemas de compatibilidade de aplicativos para desenvolvedores de aplicativos, por isso o Google também está trabalhando para priorizar a compatibilidade de aplicativos. Com o Android 11, o Google está adicionando novos processos, ferramentas para desenvolvedores e marcos de lançamento que visam minimizar o impacto das atualizações da plataforma e, assim, minimizar problemas de compatibilidade.

  • Minimizar o impacto das mudanças de comportamento: o Google fez um esforço consciente para minimizar as mudanças de comportamento que podem afetar os aplicativos. Todas essas mudanças foram analisadas de perto juntamente com o seu impacto, e foi feita uma tentativa de faça com que o maior número possível deles aceite até que os desenvolvedores definam o targetSdkVersion de seu aplicativo para Android 11. Ainda não é possível publicar aplicativos direcionados ao nível 30 da API, mas o Google permitirá isso em um futuro Android 11 Developer Preview.
  • Teste e depuração mais fáceis: em linha com o que relatamos no mês passado, o primeiro Android 11 Developer Preview vem com um Opção de desenvolvedor “Compatibilidade de aplicativos” para ajudar os desenvolvedores a testar novas mudanças na plataforma. Muitas mudanças importantes introduzidas no Android 11 Developer Preview foram feitas alternável – permitindo que os desenvolvedores forcem a ativação ou desativação das alterações individualmente nas Opções do desenvolvedor ou através do ADB. Isso deve ajudar a aliviar os problemas ao testar a compatibilidade do aplicativo, pois os desenvolvedores não precisariam recompilar seu aplicativo para testes básicos ou alterar o targetSdkVersion.
  • Listas cinza atualizadas: o Google atualizou a lista de interfaces não SDK restritas. A versão Android 11 Developer Preview também removeu a solução alternativa de meta-reflexão que alguns desenvolvedores estavam usando.
  • Carregador de recursos dinâmico: os desenvolvedores solicitaram uma API pública para carregar recursos e ativos dinamicamente em tempo de execução e, no Android 11, o Google adicionou uma estrutura de carregador de recursos.
  • Novo marco de estabilidade da plataforma: preparar aplicativos para compatibilidade antecipada foi um desafio para os desenvolvedores durante a fase Developer Preview/Beta, pois não havia datas claras para mudanças finais na plataforma para isso versão. Assim, com o Android 11, o Google está adicionando um novo marco de lançamento chamado “Estabilidade da plataforma”, que o Google espera alcançar no início de junho. Este lançamento marcante não incluirá apenas as APIs finais do SDK e do NDK, mas também incluirá APIs internas finais e outros comportamentos do sistema que podem afetar os aplicativos. Mais informações sobre o cronograma de lançamento estão disponíveis no site do desenvolvedor do Google.

Se quiser testar o novo Android 11 Developer Preview, você pode atualizar uma imagem do sistema pré-construída em um Pixel 2, Pixel 2 XL, Pixel 3, Pixel 3 XL, Pixel 3a, Pixel 3a XL, Pixel 4 ou Pixel 4 XL. Alternativamente, você pode atualizar uma imagem genérica do sistema (GSI) pré-construída e assinada pelo Google em qualquer dispositivo compatível com o Project Treble com um bootloader desbloqueado. Se você não tiver um dos smartphones Pixel compatíveis ou um dispositivo compatível com Project Treble com um bootloader desbloqueado, então você pode baixar a imagem mais recente do sistema para o emulador no Android Estúdio. O Android Emulator que executa a imagem do sistema Android 11 tem suporte experimental para executar código binário ARM de 32 e 64 bits em imagens de sistema x86 de 64 bits.

Além de configurar o Android Emulator, você também pode baixar o Android 11 Developer Preview SDK e o NDK dentro do Android Studio. O Google recomenda que você atualize o Android Studio para o último lançamento Canário para aproveitar os recursos mais recentes do IDE. Depois de tudo configurado, você pode explorar os recursos mais recentes da plataforma e as mudanças comportamentais no Android 11 Developer Preview, verificando a visão geral da API, a referência da API e o relatório de diferenças da API. Se você tiver algum comentário a oferecer, informe o Google por meio de qualquer um de seus canais oficiais. Se você encontrar um bug no Developer Preview, poderá enviar um relatório no Rastreador de problemas do Google. Por último, certifique-se de seguir nossa tag de notícias para obter as atualizações mais recentes do Android 11 – há muitos recursos de plataforma e mudanças comportamentais que achamos que o Google simplesmente não documenta!

Notícias do Android 11 no XDA