ADBR Meetup #12: Principais novidades da Android Dev Summit 2022 + AMA

Igor Escodro
Android Dev BR
Published in
8 min readMar 10, 2023

--

Android Dev Summit 2022 — Banner oficial

A comunidade Android Dev BR começou o ano de 2023 com tudo! Logo na primeira semana do ano tivemos um Meetup para discutirmos as principais novidades do Android Dev Summit 2022.

Além disso tivemos uma sessão de Ask Me Anything (AMA, ou me pergunte qualquer coisa em tradução livre) para termos uma maior interação com a comunidade. O resultado foi um sucesso! Conversamos por mais de 1:30h e a participação da comunidade foi essencial para termos ótimas discussões.

Esse artigo é um resumo do papo que tivemos nesse evento. Se você quiser ver o conteúdo na íntegra, segue o vídeo no YouTube (aproveita e segue a gente por lá também 🙂).

ADBR Meetup #12: Principais novidades da Android Dev Summit 2022 + AMA! — YouTube

Principais novidades da Android Dev Summit 2022

O Android Dev Summit 2022 separou os conteúdos em 3 trilhas: Modern Android Development, Form Factors and Platform. Cada uma dessas trilhas conta com uma série de vídeos com novidades, dicas e boas práticas. Você pode conferir todas as palestras no seguinte link:

Modern Android Development

Essa é a trilha que cobre o que há de mais moderno para o desenvolvimento Android. Aqui é possível não apenas aprender sobre novas bibliotecas, mas também como fazer um melhor uso das já existentes. Os nossos destaques dessa trilha são:

  • Relay — Ferramenta para diminuir a atritos entre o time de design e desenvolvimento. A pessoa designer cria os layouts no Figma e compartilha com a pessoa desenvolvedora e o Android Studio gera o código em Compose!
  • Modularização — Apesar de não ser novidade é muito legal ver as recomendações oficiais para construir um aplicativo modularizado, escalável e testável.
  • Dicas de performance para Compose — Tão importante quanto saber desenvolver em Jetpack Compose é garantir o desempenho da interface visual. Esse vídeo compartilha diversas dicas do que fazer (ou não) para garantir um uso fluído do app.

Aqui você também vai encontrar animações, testes estilos e conceitos básicos de Compose, Gradle Managed Devices, migrações do Room e muito mais.

Form Factors

Com apps disponíveis no ChromeOS, celulares dobráveis, relógios e carros, não é de se surpreender que tivemos uma trilha dedicada a diferentes form factors (ou formatos em tradução livre). Não podemos mais simplesmente pensar em um app para smartphone na vertical se quisermos fornecer a melhor experiência para o usuário. Entre os talks, nós destacamos:

  • Otimização de apps para ChromeOS — Com o suporte do ChromeOS para apps Android, o seu app pode estar rodando em um e você nem saber. E o pior, sem dar a melhor experiência para o usuário. Esse talk explica como otimizar o seu app nessa plataforma.
  • UI responsiva em ComposeA criação de UIs responsivas é a chave para criar uma boa experiência para os usuários de smartphones, tablets, foldables e ChromeOS. Esse talk mostra como as bibliotecas oficiais podem nos ajudar a suportar formatos tão diferentes.
  • Arquitetura para apps Wear OS — Esse talk se aprofunda em como criar uma arquitetura escalável para apps Wear OS, como reutilizar código existente e como bibliotecas como o Horologist podem te ajudar a criar uma experiência otimizada.

Platform

A trilha de plataforma trouxe novidades sobre diversas APIs bem específicas e também novidades do Android 13. Dentre elas, nós destacamos:

  • Suporte a Bluetooth Low Energy — Só quem já trabalhou com Bluetooth sabe como qualquer recurso é muito bem vindo. Esse vídeo traz as novidade do BLE Audio no Android 13.
  • Armazenamento no Android — O Android 13 é mais uma versão a trazer mudanças nesse tópico. Esse talk é o guia definitivo de como gerenciar armazenamento.
  • Migrando seus apps para Android 13 — A cada versão do Android diversas mudanças são adicionadas para melhorar a experiência do usuário. Esse vídeo cobre as principais mudanças que nossos apps precisam se adaptar.

Ask Me Anything (AMA)

Após a discussão inicial sobre o ADS 2022, abrimos o meetup para perguntas da comunidade.

O Fuchsia (Dart com Flutter) não estaria “ameaçando” o futuro do Android?

Esse é um assunto que sempre aparece quando estamos falando do futuro do Android. O Fuchsia de fato vem ganhando espaço nesse últimos anos, mas não no mundo mobile. O Fuchsia OS está sendo utilizado em dispositivos de Smart Home, especialmente o Nest Hub Max e não existe planos do Google para lançar um smartphone com esse sistema.

É difícil também imaginar o Google abrindo mão de um sistema tão robusto e que representa mais de 72% do mercado e migrar para uma aposta. O Google também investiu pesado na parceria com a JetBrains para o desenvolvimento e popularização do Kotlin desde 2017, o que demonstra o compromisso do Google com o ecossistema.

Se você quer iniciar uma carreira em Android mas está com receio do futuro da plataforma, até o momento não existe nada além de boatos. 😄

Vocês acham que o Kotlin Multiplaform Mobile (KMM) e Compose Multiplatform vão vingar? Eles irão competir com Flutter?

Por enquanto a nossa experiência com essas ferramentas ainda está no campo de testes. A ideia de ter regras de negócio e interface de usuário compartilhadas é um sonho antigo e existem diversas ferramentas para isso.

Um ótimo exemplo de como essas ferramentas podem nos ajudar é a criação de apps que rodem tanto em Android, quanto no desktop. O desenvolvimento de apps para desktop é complexo e tem várias questões que o multiplataforma nos ajuda a resolver.

Como sempre a resposta para esse tipo de pergunta é “depende”. O Flutter, o KMM e o Compose Multiplatform podem ser usados para resolver problemas diferentes. O fato de o KMM não precisar ser usado unicamente com o Compose nos dá uma flexibilidade muito grande para compormos diferentes ferramentas para resolvermos diferentes tipos de problemas.

Vocês perceberam alguma resistência das empresas em contratar desenvolvedores Android nativo recentemente?

A sensação que temos é que essa recente dificuldade de contratação é geral na área de tecnologia. Nesse último ano diversas empresas fizeram demissões em massa após o boom de contrações dos últimos dois anos.

Isso tem gerado uma saturação no mercado, que tem muitos candidatos de alto nível concorrendo com pessoas menos experientes. Existe também uma deficiência das empresas em querer contratar e formar pessoas desenvolvedoras de nível Junior.

Mas esses pontos não são exclusivos de desenvolvedores Android e sim dessa instabilidade do mercado. Nossa opinião é: se você está em uma empresa legal, agora é o momento de continuar lá; e se você está procurando uma vaga para entrar no mercado, tente encontrar empresas que possuem um plano de carreira bem definido.

Fiquei fora do universo Android por alguns anos. Quais dicas vocês dão para eu me atualizar?

Como o Android é um ecossistema muito sólido existem diversos materiais de estudo. Um material recente que o Google lançou é o app Now In Android que utiliza diversas práticas recentes do Android como Compose, modularização, Navigation, teste etc. Fora todo o material oficial do Google, existem diversos artigos, bibliotecas e roadmaps de estudo disponíveis gratuitamente.

A nossa dica é mergulhar nesse tipo de conteúdo mais avançado para ter como um norte para o seu desenvolvimento.

Considerando que o Jetpack Compose é desenvolvido em uma biblioteca gráfica multiplataforma, vocês acham que seria possível uma versão de Compose para iOS?

Atualmente não existe nenhuma comunicação oficial da JetBrains sobre esse suporte. Entretanto, a TouchLab já fez alguns experimentos e conseguiram rodar Compose em iOS.

Se Compose para iOS terá futuro é difícil saber. Sem um suporte oficial da JetBrains dificilmente ela será utilizada comercialmente. Ainda mais pelo fato que existem outras ferramentas muito mais maduras para resolver esse problema.

Vocês acham que novos apps devem ser feitos em Compose?

Em um primeiro momento nossa resposta seria “sim”, mas vamos de “depende” de novo. Se você já possui conhecimento em Jetpack Compose ou frameworks de UI declarativa, o Compose já está maduro para ser usado em apps comerciais. E diversos aplicativos de grandes empresas já estão usando há um tempo.

Se você não tem conhecimento sobre Compose ou o seu paradigma, talvez seja melhor ir com calma. Muitos desenvolvedores trabalham com prazos apertados e aprender uma ferramenta sobre pressão não é algo confortável. Aprenda Compose com os ótimos Codelabs oficiais do Google em ambiente de testes antes de usá-lo comercialmente.

Outro ponto importante é que o Jetpack Compose tem uma excelente interoperabilidade com XML. Isso significa que você pode iniciar um aplicativo em XML e criar algumas telas em Compose e vice-versa. A decisão de utilizar ou não Compose em um projeto não é definitiva.

Comecei no mundo mobile em Flutter, devo aprender desenvolvimento nativo?

Essa é uma questão muito pessoal porque depende do seu objetivo de carreira. Você deve estudar e se aperfeiçoar em algo que gosta e quer trabalhar porque nós que ditamos o rumo da nossa carreira. Algumas pessoas desenvolvedoras tem o perfil mais generalista e gostam de dominar múltipla linguagens e ferramentas; e outras tem o perfil mais especialista.

Dependendo do que for desenvolver em Flutter seja necessário algum conhecimento nativo. Mas dificilmente será necessário se aprofundar em todo o ecossistema se não for algo que você almeja.

Quais dicas vocês dão para controlar a ansiedade em meio a tanta coisa que precisamos aprender?

Partimos do ponto que nunca vamos saber tudo. Com isso precisamos traçar o nossos objetivos e limites do que vamos aprender. Procure materiais sobre assuntos mais básicos como Activity, Architecture Components, Compose etc e vá se especializando com base nos seus objetivos.

Por exemplo, se você não tem interesse e a sua empresa não suporta Android Wear está tudo bem em não se aprofundar nisso. Saiba pelo menos que esse tópico existe e aonde procurar informações caso isso entre no seu radar.

Uma dica que sempre compartilhamos é de criar um aplicativo pessoal. Eu já escrevi um artigo sobre o quanto eu aprendi e o quanto me ajudou a crescer como desenvolvedor. Um aplicativo pessoal é uma ótima forma de praticar novas tecnologias em um ambiente seguro e que simula um cenário profissional.

Muito obrigado pela participação e por todo o papo que tivemos no evento. Estamos sempre disponíveis no Slack do Android Dev BR para trocar uma ideia! ❤️

Esse artigo foi co-escrito por Igor Escodro e Walmyr Carvalho

--

--

Igor Escodro
Android Dev BR

Passionate Android developer | Google Developer Expert for Android