Kords – cifras para violão e guitarra para Android

Olá pessoal!

Eu ando sumido aqui do blog, mas é por um motivo nobre: nos últimos meses, eu tenho trabalhado em um projeto pessoal chamado Kords – um aplicativo para Android com cifras para violão e guitarra.

Tem sido um exercício bastante interessante! o Kords utiliza alguns dos componentes do Android Jetpack como Room, Databinding, LifeCycle, etc. Esses componentes ajudam a criar uma app moderna e robusta com uma arquitetura simples mas poderosa.

Nos próximos posts, vou falar um pouco mais sobre todo o processo de desenvolvimento da app e a minha experiência com os novos componentes. Enquanto isso, dêem uma olhada na app, que já está disponível gratuitamente no Google Play: https://play.google.com/store/apps/details?id=app.kords

Mais informações sobre a app também podem ser obtidas no site kords.app

Otimizando sua aplicação para o Android Go

No Google I/O 2018 foi apresentado o Oreo – a nova versão do Android. Com ele, também veio o Android Go, uma versão do sistema operacional otimizada para dispositivos de entrada, com pouca memória e menor capacidade de processamento.

Android Go

Ok, mas como desenvolvedor de aplicações android, por que devo me preocupar com isso? 

Além das otimizações no sistema operacional, o Google também divulgou uma série de recomendações para os desenvolvedores de aplicações para esta verão da plataforma. São elas:

Conectividade

Um dos objetivos do Android Go é levar o acesso a smartphones a regiões mais pobres, onde a infraestrutura de rede nem sempre consegue entregar uma conexão estável. Por isso, uma aplicação otimizada deve se preocupar em sempre tratar os cenários de erro de rede, seja por falta de conexão ou por lentidão no recebimento de dados. Sempre que possível, ofereça conteúdo offline para o usuário.

Outro fator importante é a quantidade de dados recebidos/enviados pela rede. Sua …

Qualidade de software Android: Annotations

Olá pessoal!

Dando continuidade à série Desenvolvendo para Android, irei falar sobre algumas maneiras para garantir a qualidade de software de seu projeto. Uma das mais efetivas técnicas é o uso de Annotations.

Annotations são marcações no código que definem certos comportamentos de métodos e variáveis. Por exemplo, você pode indicar que um parâmetro de seu método não pode ser null  utilizando a seguinte marcação:

    
public String meuMetodo(String nome, @NonNull Context contexto) {
    return null;
}

Com essa definição de método, se você fizer uma chamada em que context tem valor null, o Android Studio irá automaticamente mostrar um erro:

erro annotation

Ferramentas de análise estática de código como o Lint também utilizam as annotations para indicar erros.

– Mas Felipe, eu sei que não posso chamar o meu método desse jeito!

Sim! mas um programador que tenha que alterar seu código daqui a alguns meses pode não saber. Inclusive você pode não se lembrar 🙂

Adicionando a biblioteca de Annotations ao

Android M – Novidades da nova versão da plataforma apresentados no Google I/O 2015

Ontem (dia 29 de maio de 2015) o Google anunciou a nova versão da plataforma Android. Ainda sem nome (tal como aconteceu no ano passado), a nova versão traz diversas melhorias e algumas boas novidades. Abaixo uma lista das mais importantes, e o impacto delas no desenvolvimento de aplicações Android.

Android M novidades

Novo modelo de permissões

A partir da nova versão, algumas permissões poderão ser solicitadas no momento em que são utilizadas pela aplicação. Por exemplo, o sistema irá perguntar ao usuário se ele permite que aplicação acesse o GPS apenas quando o usuário entrar em uma tela que utiliza este recurso. Particularmente gosto deste modelo (muito parecido com o que acontece em iOS) pois permite que o usuário saiba exatamente para quê a aplicação irá utilizar as permissões.

Em termos de desenvolvimento, agora o desenvolvedor terá que ter um cuidado a mais ao utilizar APIs que acessam tais recursos: Sempre existirá a possibilidade o usuário não permitir o acesso a …

O que esperar do Google I/O 2015

Como a maioria de vocês deve saber, amanhã (28 de maio) começa o Google I/O, evento anual em que o Google apresenta suas novidades.

Google I/O 2015

Neste ano, é esperado o anúncio da nova versão de Android (cujo nome ainda não foi divulgado, e por isso está sendo chamado apenas de Android M) que, segundo rumores, traz diversas melhorias relacionadas à “trabalho” ou mais especificamente, melhorias para usar um telefone Android em seu ambiente de trabalho.

Especulações à parte, é sempre importante estar atento às novas funcionalidades. Por isso, após o evento eu irei colocar no site um resumo das novidades em Android.

 

Para quem puder participar, o evento que terá transmissão ao vivo neste link: https://events.google.com/io2015/

Como o Android MonkeyTest pode ajudar em seu projeto

Você já usou o monkey test em seu projeto Android?

Se não, está perdendo uma chance de encontrar bugs em sua aplicação sem muito trabalho. O Monkey Test é uma das ferramenta do SDK Android e seu intuito é fazer testes aleatórios em uma aplicação.

Android monkey test

Mas como funciona?

O monkey test tool envia para a aplicação eventos de interface com usuário (toques na tela e digitação de textos) totalmente aleatórios sequencialmente. Ou seja, é como se sua aplicação estivesse sendo testada por um macaco (ou por um usuário que não tenha a mínima noção do que está fazendo 🙂 ) .

Mas por que eu iria querer esse tipo de teste na minha aplicação?

Bem, à primeira vista este tipo de teste parece não servir para muita coisa, mas ele é sim útil para encontrar alguns tipos específicos de bugs. Por exemplo, bugs relacionados a alguma race-condition, como o clique em um botão antes de algum componente essencial ser …