Autor: Dave Burke, vice-presidente de engenharia
Todos os dias, os apps Android ajudam bilhões de pessoas a trabalhar, jogar, se comunicar e criar em uma ampla gama de dispositivos, de smartphones e laptops a tablets, TVs e carros. À medida que mais pessoas passam a contar com as experiências que você cria, as expectativas delas podem aumentar com a mesma rapidez. Esse é um dos motivos pelos quais nós compartilhamos as versões do Android com você imediatamente: o seu feedback nos ajuda a criar uma plataforma melhor para os apps e para todas as pessoas que os utilizam. Hoje, estamos lançando a prévia inicial para desenvolvedores do Android 12, a próxima versão do Android, para testes e feedback.
Em cada versão, estamos trabalhando para tornar o SO mais inteligente, mais fácil de usar e com melhor desempenho, com a privacidade e a segurança em primeiro lugar. No Android 12, estamos também trabalhando para dar a você novas ferramentas para criar ótimas experiências para os usuários. Começamos com componentes como a transcodificação de mídia compatível, que ajuda o app a funcionar com os mais recentes formatos de vídeo, caso você ainda não tenha suporte a eles, e um recurso copiar/colar simplificado para conteúdo avançado nos apps, como imagens e vídeos. Também estamos adicionando proteções de privacidade e otimizando o desempenho para manter os apps responsivos.
A prévia inicial de hoje é apenas o começo para o Android 12, e teremos muito mais a compartilhar à medida que avançarmos na versão. Continue lendo para conhecer algumas das novidades do Android 12 e visite o site para desenvolvedores Android 12 para obter detalhes sobre downloads para o Pixel e o cronograma de lançamento. Como sempre, é fundamental que recebamos seu feedback o mais cedo possível para que possamos incorporá-lo ao produto final. Portanto, conte para a gente o que você achou.
Além do trabalho que estamos realizando no Android 12, ainda este mês teremos mais a compartilhar sobre outra ferramenta importante que ajuda a criar ótimas experiências do usuário com mais facilidade: o Jetpack Compose, nosso kit de ferramentas moderno para a criação de IUs nativas. Junte-se a nós no #TheAndroidShow, com transmissão ao vivo no dia 24 de fevereiro às 9h (horário do Pacífico), para saber o que se passa nos bastidores do Jetpack Compose e envie seu tweet com perguntas sobre o Jetpack Compose usando a hashtag #TheAndroidShow. As perguntas serão respondidas ao vivo no programa.
A privacidade está no centro de tudo o que fazemos e, no Android 12, continuamos a nos concentrar em oferecer mais transparência e controle aos usuários e manter os dispositivos e dados deles seguros. Na versão que anunciamos hoje, foram adicionados novos controles sobre identificadores que podem ser usados para rastreamento, padrões mais seguros para componentes de apps e muito mais. Essas mudanças podem afetar seus apps, por isso recomendamos que eles sejam testados assim que possível. Fique de olho nos recursos de privacidade e segurança das próximas prévias.
Comportamentos modernos de cookies do SameSite no WebView - Em linha com as mudanças feitas no Chrome e em outros navegadores, o WebView inclui novos comportamentos de cookies do SameSite para fornecer segurança e privacidade adicionais e dar aos usuários mais transparência e controle sobre como os cookies podem ser usados nos sites. Saiba mais aqui.
MAC do Netlink restrito - Continuamos ajudando os desenvolvedores a migrar para os identificadores redefiníveis para proteção da privacidade. Em um esforço ao longo de várias versões para facilitar a migração do MAC do Netlink centrado em dispositivo, no Android 11 restringimos o acesso a ele com base na API de nível 30. E, no Android 12, estamos aplicando a restrição a todos os apps, independentemente do nível de targetSDK. Saiba mais aqui.
Exportação de componentes mais segura - Para impedir que os apps exportem atividades, serviços e receptores inadvertidamente, estamos mudando o tratamento padrão do atributo android:exported para que ele seja mais explícito. Com essa mudança, os componentes que declaram um ou mais filtros intent agora devem declarar explicitamente um atributo android:exported. Inspecione seus componentes no manifesto para evitar erros de instalação relacionados a essa mudança. Saiba mais aqui.
Tratamento mais seguro de intents - Para tornar mais seguro o tratamento de PendingIntents, o Android 12 exige que os apps declarem explicitamente uma sinalização de mutabilidade, seja com FLAG_MUTABLE ou com o novo FLAG_IMMUTABLE, para cada PendingIntent. Saiba mais aqui.
Você pode ler mais sobre essas e outras mudanças de privacidade e segurança aqui.
No Android 12, estamos investindo em áreas-chave para ajudar a oferecer uma experiência refinada e um desempenho melhor para os usuários. Estas são algumas das atualizações até o momento.
Transcodificação de mídia compatível - Com a prevalência dos codificadores de hardware HEVC em dispositivos móveis, os apps de câmera estão capturando cada vez mais em formato HEVC, que oferece melhorias significativas de qualidade e compactação em relação aos codecs mais antigos. A maioria dos apps deve ter suporte a HEVC, mas estamos introduzindo a transcodificação de mídia compatível para aqueles que não têm.
Com esse recurso, um app sem suporte a HEVC pode fazer com que a plataforma transcodifique o arquivo automaticamente para AVC, um formato amplamente compatível. O processo de transcodificação pode demorar, dependendo das propriedades do vídeo e do hardware do dispositivo. Por exemplo, um vídeo com 1080 p a 30 qps e com duração de um minuto leva cerca de 9 segundos para ser transcodificado em um Pixel 4. Você pode optar por usar o serviço de transcodificação simplesmente declarando os formatos de mídia aos quais seus apps não dão suporte. Para os desenvolvedores, recomendamos que os apps tenham suporte a HEVC e, se isso não for possível, que a transcodificação de mídia compatível seja ativada. O recurso estará ativo em todos os dispositivos que utilizam o formato HEVC para captura de vídeo. Adoraríamos receber seu feedback sobre esse recurso. Saiba mais aqui.
Suporte a imagens AVIF - Para oferecer uma qualidade de imagem mais alta e com compactação mais eficiente, o Android 12 introduz o suporte de plataforma ao formato de arquivo de imagem AV1 (AVIF, na sigla em inglês). O AVIF é um formato de contêiner para imagens e sequências de imagens codificadas usando AV1. Assim como outros formatos de imagem modernos, o AVIF aproveita o conteúdo intraquadro codificado da compactação de vídeo. Isso melhora significativamente a qualidade da imagem com o mesmo tamanho de arquivo, em comparação com formatos de imagem mais antigos, como o JPEG.
AVIF (18,2 kB)
JPEG (20,7 kB)
Créditos: Comparação de imagens do artigo AVIF has landed, de Jake Archibald
Otimizações de serviços em primeiro plano - Os serviços em primeiro plano são uma forma importante pela qual os apps gerenciam determinados tipos de tarefas voltadas para o usuário. Mas, quando excessivamente utilizados, eles podem afetar o desempenho e até mesmo levar a falhas em apps. Para garantir uma experiência melhor para os usuários, bloquearemos as inicializações de serviços em primeiro plano a partir do segundo plano para os apps segmentados para a nova plataforma. Para facilitar a transição desse padrão, estamos introduzindo um novo expedited job no JobScheduler que recebe prioridade de processo elevada e acesso à rede, além de ser executado de forma imediata e independente de restrições de energia, como Economia de bateria ou Soneca. Para a compatibilidade com versões anteriores, também integramos expedited jobs à versão mais recente da biblioteca WorkManager do Jetpack. E, para reduzir as distrações para os usuários, agora estamos adiando em até 10 segundos a exibição de algumas notificações de serviços em primeiro plano. Isso dá às tarefas de curta duração a chance de ser concluídas antes que suas notificações sejam mostradas. Saiba mais aqui.
Inserção de conteúdo avançado - Os usuários adoram imagens, vídeos e outros conteúdos expressivos, mas inserir e mover esse conteúdo nos apps nem sempre é fácil. Para simplificar para os apps o recebimento de conteúdo avançado, estamos introduzindo uma nova API unificada que permite aceitar conteúdo de qualquer fonte: área de transferência, teclado ou ação de arrastar e soltar. Você pode anexar uma nova interface, OnReceiveContentListener, aos componentes da IU e receber uma callback quando o conteúdo for inserido por meio de qualquer mecanismo. Essa callback passa a ser o único local em que o código lida com a inserção de todo o conteúdo, de texto simples e com estilo até marcações, imagens, vídeos, arquivos de áudio e muito mais. Para a compatibilidade com versões anteriores, adicionamos a API unificada ao Androidx. Saiba mais aqui.
Efeito de áudio vinculado ao tato - No Android 12, os apps podem fornecer o retorno tátil vinculado ao áudio por meio do vibrador do telefone. A intensidade e a frequência da vibração são derivadas de uma sessão de áudio, permitindo criar experiências de jogo e áudio mais imersivas. Por exemplo, um app de videochamada pode usar toques personalizados para identificar o autor da chamada por meio de retorno tátil, ou você pode simular um terreno acidentado em um jogo de corrida. Saiba mais aqui.
Áudio multicanal - O Android 12 inclui várias melhorias para áudio com informações espaciais. Ele adiciona o suporte à reprodução de MPEG-H no modo passthrough e de descarga, e os mixers de áudio, reamostradores e efeitos foram otimizados para até 24 canais (antes, o máximo era 8).
Melhorias de API de modo imersivo para navegação por gestos - Simplificamos o modo imersivo para que a navegação por gestos seja mais fácil e consistente, por exemplo, ao assistir a um vídeo, ler um livro ou jogar. Ainda protegemos os apps contra gestos acidentais durante experiências em tela cheia relacionadas a jogos, mas, em todas as outras experiências imersivas ou em tela cheia (como visualizadores de vídeo, leitura, galeria de fotos), para apps segmentados para a nova plataforma, estamos mudando o padrão para permitir que os usuários naveguem nos telefones com um gesto de deslizar. Saiba mais aqui.
Atualizações de IU de notificação - Estamos atualizando os designs de notificação para torná-los mais modernos, mais fáceis de usar e mais funcionais. Nessa prévia inicial, você notará mudanças na gaveta e nos controles para os modelos em si. Também estamos otimizando as transições e animações em todo o sistema para torná-las mais suaves. Como parte das atualizações, para os apps segmentados para o Android 12, estamos decorando as notificações de conteúdo personalizado com affordances expansíveis e de ícone para a correspondência com todas as outras notificações. Saiba mais aqui.
Notificações mais rápidas e responsivas - Quando os usuários tocam em uma notificação, eles esperam saltar imediatamente para o app. E quanto mais rápido, melhor. Para atender a essa expectativa, os desenvolvedores devem assegurar que os toques em notificações acionem inicializações de Activity diretamente, em vez de usar “trampolins” - um receptor ou serviço intermediário de transmissão - para iniciar a Activity. Os trampolins de notificação podem causar atrasos significativos e afetar a experiência do usuário. Para manter as notificações responsivas, o Android 12 bloqueará os trampolins de notificação, impedindo-os de iniciar suas Activities-alvo, e nós estamos solicitando aos desenvolvedores que façam a migração desse padrão. A mudança se aplica apenas aos apps segmentados para a nova plataforma, mas, para todos os apps, exibiremos um aviso para tornar os trampolins visíveis para você e para os usuários. Saiba mais aqui.
Melhoria das chamadas ao vinculador IPC - Como parte de nosso trabalho em desempenho, nos concentramos na redução da variabilidade do sistema. Demos uma olhada na distribuição da latência e da carga de trabalho e fizemos otimizações que reduzem a experiência mediana da extremidade, ou 99% dos casos de uso. Nesse processo, nosso foco foram as melhorias das chamadas a vinculadores do sistema, com a adição de estratégias leves de armazenamento em cache e nos concentrando na remoção da contenção de bloqueio para melhorar a distribuição da latência. Isso praticamente dobrou o desempenho nas chamadas a vinculadores, com melhorias significativas em chamadas específicas, por exemplo, uma melhoria de 47 vezes em refContentProvider(), 15 vezes em releaseWakeLock() e 7,9 vezes em JobScheduler.schedule().
Estamos trabalhando para agilizar e simplificar as atualizações priorizando a compatibilidade de apps à medida que lançamos novas versões da plataforma. No Android 12, a maioria das mudanças voltadas para os apps é ativável, para que você tenha mais tempo, e nossos processos e ferramentas foram atualizados para ajudar você a se preparar mais rapidamente. Também adicionamos novas funcionalidades às atualizações do sistema do Google Play para dar aos apps um ambiente melhor em dispositivos Android 12.
Mais atualizações do Android por meio do Google Play - Continuamos a expandir nossos investimentos em atualizações do sistema do Google Play (Project Mainline) para dar aos apps um ambiente mais consistente e seguro em todos os dispositivos. No Android 12, adicionamos o módulo Android Runtime (ART), que nos permite enviar atualizações para o ambiente de execução e as bibliotecas principais em dispositivos com o Android 12. Podemos melhorar o desempenho e a exatidão do ambiente de execução, gerenciar a memória com mais eficiência e acelerar as operações do Kotlin, tudo sem exigir uma atualização total do sistema. Também expandimos a funcionalidade dos módulos existentes. Por exemplo, estamos disponibilizando nosso recurso de transcodificação de mídia compatível dentro de um módulo atualizável.
Otimização para tablets, dispositivos dobráveis e TVs - Com mais pessoas do que nunca usando apps em dispositivos de tela grande como dispositivos dobráveis, tablets e TVs, este é um ótimo momento para garantir que seu app ou jogo esteja pronto para isso. Comece otimizando para tablets e criando apps para dispositivos dobráveis. E, para a maior tela da casa, a prévia inicial do Android 12 para Android TV também está disponível. Além de levar os mais recentes recursos do Android para a TV com essa prévia, você pode testar os apps na novíssima experiência do Google TV. Saiba mais no site para desenvolvedores Android TV e comece com o ADT-3 developer kit.
Listas atualizadas de interfaces que não são de SDK - Restringimos interfaces que não são de SDK adicionais e, como sempre, seu feedback e suas solicitações para equivalentes de APIs públicas são bem-vindos.
Simplificação de teste e depuração de mudanças - Para facilitar para você o teste das mudanças ativáveis que podem afetar um app, tornamos muitas delas alternáveis. Com os botões de alternância, você pode ativar ou desativar as mudanças individualmente usando as opções do desenvolvedor ou o adb. Confira os detalhes aqui.
Marco de estabilidade da plataforma - Como no ano passado, estamos informando antecipadamente sobre nosso marco de estabilidade da plataforma, para que você tenha mais tempo para se planejar para o trabalho de compatibilidade de apps. Nesse marco, disponibilizaremos não apenas as APIs SDK/NDK finais, mas também as APIs internas finais e os comportamentos do sistema voltados para os apps. Esperamos atingir a estabilidade da plataforma até agosto de 2021, e você terá várias semanas até o lançamento oficial para executar seus testes finais. Os detalhes do cronograma de lançamento podem ser encontrados aqui.
A prévia para desenvolvedores tem tudo o que você precisa para experimentar os recursos do Android 12, testar apps e nos enviar feedback. Você pode começar hoje mesmo atualizando uma imagem de sistema de dispositivo para um dispositivo Pixel 3/3 XL, Pixel 3a/3a XL, Pixel 4/4 XL, Pixel 4a/4a 5G ou Pixel 5. Se você não tem um dispositivo Pixel, pode usar as imagens de sistema de 64 bits com o Android Emulator no Android Studio.
Quando tudo estiver configurado, estas são algumas das coisas que você deverá fazer:
Atualizaremos regularmente as imagens de sistema e o SDK da prévia ao longo do ciclo de versões do Android 12. Essa prévia inicial é apenas para desenvolvedores e não se destina ao uso diário ou pelos consumidores. Por isso, ela está disponível apenas por download manual. Você pode atualizar uma imagem de fábrica em um dispositivo Pixel ou transferir uma imagem OTA por sideload para um dispositivo Pixel com o Android 11. Nesse último caso, não será necessário desbloquear o carregador de inicialização nem excluir permanentemente os dados. De qualquer forma, depois de instalar manualmente um build de prévia, você receberá automática e remotamente (OTA) as futuras atualizações para todas as prévias e versões Beta. Saiba mais aqui.
Quando estivermos mais próximos de um produto final, convidaremos os consumidores para que eles também o experimentem e abriremos os registros por meio do Android Beta. Fique ligado para saber todos os detalhes. Por enquanto, vale lembrar que o Android Beta ainda não está disponível para o Android 12.
Para acessar todas as informações, visite o site para desenvolvedores Android 12.
Postar um comentário
Um comentário :
Postar um comentário