Com o lançamento do Android 12, o sistema de temas baseado em papel de parede do Google não será totalmente de código aberto. Isso mudará em uma versão futura.
Estamos a apenas algumas semanas do lançamento de Andróide 12, mas é importante lembrar que os rumores Data de lançamento em 4 de outubro é apenas para os telefones Pixel do próprio Google. Levará semanas, ou provavelmente meses, para que a atualização chegue a outros dispositivos e, quando isso acontecer, não incluirá todos os novos recursos. O recurso mais notável que estará faltando no lançamento de código aberto do Android 12 – e, portanto, não aparecerá em muitos forks OEM do sistema operacional – é o mecanismo de temas baseado em papel de parede do Google, codinome "monet". No entanto, parece que a sua exclusão do Android de código aberto é apenas temporária, já que surgiram evidências de que "monet" será totalmente de código aberto com o lançamento do Android. 12.1.
Para aqueles que ainda não viram ou experimentaram um dos betas do Android 12, talvez não estejam cientes das principais mudanças na interface do usuário que o Google está fazendo. O Android 12 apresentará a atualização de IU mais significativa para a plataforma desde o Android 5.0 de 2014 Lançamento do Lollipop quando o Google revelou pela primeira vez o Material Design, a marca da empresa para seu design linguagem. A linguagem de design do Google evoluiu ao longo dos anos e, para refletir a ênfase da última iteração na personalização, o Google a rebatizou para "
Material você."Uma das principais características do Material You é o já mencionado sistema de tema “monet”, que gera automaticamente uma paleta de cores para o sistema com base no papel de parede do usuário. De acordo com o Google, um mecanismo de extração de cores que emprega um algoritmo de agrupamento com alvos de cores materiais determina as cores dominantes e menos dominantes do papel de parede do usuário. Um algoritmo de geração de paleta cria então uma rica paleta de 5 cores – 2 cores neutras e 3 cores de destaque – bem como 12 tons de cor do material que são usados para determinar os matizes mais próximos da cor do usuário papel de parede. Esses valores de cores são salvos em um índice que os aplicativos podem chamar por meio de uma API, permitindo que eles também definam o tema de sua IU.
Quando o Google revelou pela primeira vez seu sistema de temas “monet” em sua conferência de desenvolvedores de I/O no início deste ano, a empresa disse que virá primeiro para telefones Google Pixel no outono. No entanto, não estava claro se o Google simplesmente reivindicou exclusividade de primeiro lançamento para “monet” ou se o recurso seria totalmente exclusivo para telefones Pixel com Android 12. Em outras palavras, não tínhamos ideia se fabricantes de dispositivos como Samsung, Xiaomi, OPPO ou OnePlus teriam acesso total para usar “monet” em seus próprios sistemas operacionais.
A menos que o Google exija isso (o que é raro), os fabricantes de dispositivos geralmente são livres para escolher se desejam implementar as alterações na interface do Google. No caso do “monet”, os fabricantes de dispositivos teriam que reimplementar partes do sistema, já que nem todas as facetas são de código aberto. De acordo com kdrag0n, um desenvolvedor que código aberto para seu gerador de paleta de cores dinâmicas semelhante ao "monet" do Google, a extração de cores principais e modelo de aparência de cor (CAM) ambos já são de código aberto, enquanto o algoritmo AOSP para pós-processamento/filtragem de cores extraídas é supostamente “muito próximo” da solução proprietária do Google. O que resta principalmente para ser de código aberto é o algoritmo de geração de paleta, que é uma parte fundamental do processo de criação de temas.
Felizmente, parece que o Google está pronto para liberar o código-fonte deste algoritmo. Duas fontes corroboraram que o Google cometeu recentemente uma alteração de código intitulada “adicionar monet ao AOSP”. Este patch estava inicialmente disponível apenas no Ramificação interna AOSP para Android 13 "Tiramisu", mas foi recentemente escolhido para o branch interno do Android 12-sv2.
O Android 12-sv2 será uma atualização pontual acompanhada por um aumento no nível da API, então estamos provisoriamente chamando-o de Android 12.1. Ao lado um novo papel de parede, a atualização também trará alguns pequenas melhorias na experiência do telefone dobrável incluindo um recurso da barra de tarefas. E, claro, aparentemente será o primeiro lançamento a incluir o código-fonte de “monet”.
As capturas de tela abaixo foram tiradas de um dispositivo executando uma versão interna do AOSP do Android 12.1, mostrando que “monet” foi implementado na versão de código aberto.
Ainda não sabemos quando o Google planeja lançar o Android 12.1 ao público, então não sabemos quando os OEMs terão acesso total ao novo sistema de temas do Google. Já podemos ver isso Android 12 beta da Samsung ignora totalmente a implementação do Material You e não houve menção ao design atualizado ou ao tema baseado em papel de parede no anúncio ColorOS 12 da OPPO. Se alguma das empresas – ou qualquer outro OEM – quiser que seus usuários aproveitem temas baseados em papel de parede no Android 12, eles terão que implementá-los por conta própria ou fazer backport do recurso. Isso certamente é possível, visto que grande parte do código necessário já está incluído no Android 12 código-fonte ainda não público e o restante no Android 12.1, mas não é algo que possamos imaginar todo OEM servirá.
Obrigado ao desenvolvedor kdrag0n por sua contribuição neste artigo!