Manual

do

Maker

.

com

Programar para Android com Qt

Programar para Android com Qt

Estou escrevendo um outro artigo interessante com Arduino e será necessário um app Android para interagir com ele. Como Java não é minha praia, resolvi fazer o app em C++ mesmo, utilizando o framework Qt. Se você não conhece o Qt, saiba que dentre os grandes programas livres feitos com ele está o KDE, o desktop manager mais popular do Linux, com tantos recursos que é quase um sistema por sí só, então, vamos programar para Android com Qt.

Hora de se apaixonar!

Download do QtCreator

Primeiro, é necessário baixar o instalador. Ao baixar, opte pela versão OpenSource. O download pode ser feito através desse link. Após baixar, você deve ter um arquivo com nome igual ou parecido a qt-unified-linux-x64-3.0.0-online.run. O próximo passo é dar permissão de execução para o arquivo, então executá-lo. Abra um console qualquer (gterm,kterm,xterm,konsole...) e faça o seguinte:

cd Downloads
chmod 750 qt-unified-linux-x64-3.0.0-online.run
./qt-unified-linux-x64-3.0.0-online.run

Na janela que se abre, apenas clique em Next. Siga clicando até a instalação.

Instale o Android SDK

Agora é hora de baixar o Android Studio. Mas calma, não vamos usá-lo para programar. Vá a esse link e faça o download.

Após baixado, mova-o de ~/Downloads para /usr/local. descomprima-o e execute o script studio.sh:

sudo mv ~/Downloads/android* /usr/local
cd /usr/local
unzip android*
cd android-studio/bin
./studio.sh

Utilize as configurações default, apenas clicando em Next até que a instalação seja concluída. Você pode baixar apenas o sdk se tiver intimidade suficiente com o bash, mas desse jeito facilita as coisas.

Aproveite e instale as compatibilidades de 32bits:

apt-get install lib32z1 lib32ncurses5 lib32stdc++6

Instale o Android NDK

Tendo concluída as tarefas anteriores, pegue agora o NDK. O NDK é um conjunto de ferramentas que permitem o desenvolvimento em C/C++ para Android, portanto, fundamental. Descomprima-o em seu diretório home (cd ~).

Instale o JDK

Pegue o JDK nesse link. Mais uma vez, descomprima-o em seu diretório home. Estamos quase lá.

Baixe e instale o Apache Ant

Vá até esse link, baixe e descomprima-o em /usr/local.

sudo su
mv apache* /usr/local
cd /usr/local
unzip apache*

Adicione umas variáveis de ambiente ao seu ~/.bashrc:

export ANT_HOME=/usr/local/ant
export JAVA_HOME=/home/djames/jdk1.8.0_131/jre/
export PATH=${PATH}:${ANT_HOME}/bin

Instalando mais compatibilidades

Use essa linha de comando para instalar as dependências de 32bits:

sudo apt-get install libstdc++6:i386 libgcc1:i386 zlib1g:i386 libncurses5:i386 libsdl1.2debian:i386

Adicione os paths para o NDK e o SDK

Agora você pode abrir o QtCreator e adicionar os paths para o NDK e o SDK. Apesar do processo trabalhoso até aqui, não deve ter nenhuma complicação. No QtCreator, abra o menu Tools > Options > Devices > Android e adicione os paths do NDK e SDK.

O SD estará em ~/Android/Sdk.

O ndk estará em seu home, iniciando pelo nome ndk. Se desejar, configure também o path para o binário do Ant. O resultado será semelhante a esse da imagem abaixo, com warnings dos kits que não estão instalados (e não são necessários, exceto deseje programar para uma dessas plataformas).

Descobrir a arquitetura do seu smartphone

Será necessário. Para descobrir a arquitetura do seu smartphone, instale o app Droid Hardware Info. Abra-o e vá ao menu Sistema.

A arquitetura é necessária para a escolha do kit para desenvolvimento.

 

Programar para Android com Qt

Agora você já pode criar um projeto na interface do QtCreator. Vá ao menu File > New file or project. Clique em Application e então clique no botão Choose....

Após escolher um nome para o projeto na próxima tela (eu optei por nomeá-lo como "helloAndroid"), você será questionado sobre o kit para desenvolvimento. Por padrão,  a versão desktop está selecionada. Pode mantê-la selecionada, sem problemas. Apenas adicionar os pacotes para arm deve funcionar. Em outro caso, você precisará pesquisar sobre a instalação de um novo kit que corresponda à arquitetura do seu smartphone.

Habilitar interconexão

No Android, abra o menu Configuraçõese vá até o último item (modo desenvolvedor). Habilite a depuração USB. Quando você conectar o smartphone ao cabo USB e selecionar o dispositivo a enviar o programa (no primeiro botão verde da coluna da esquerda), dependendo da versão do Android será necessário dar permissão no dispositivo. Faça-o.

Desconecte e conecte o cabo novamente após dar permissão, se ainda não aparecer como disponível na janela acima. No Android deve aparecer algo como:

permissions_android.webp

Depois disso, a janela mostrará algo como:

connection_ok.webp

Selecione o dispositivo e então começará a compilação. Talvez aconteça um download previamente à compilação. Se "tudo der certo e nada der errado", você deverá ver uma tela branca em seu smartphone. Pra não ficar Só na tela branca, adicione um botão sem função, apenas para visualizá-lo.

helloWorld.webp

Se você já programa em Qt, pode começar a diversão por aí, senão, aguarde o próximo artigo relacionado, onde pretendo interagir com um Arduino a partir do Android.

Inscreva-se no nosso canal Manual do Maker no YouTube.

Também estamos no Instagram.

Nome do Autor

Djames Suhanko

Autor do blog "Do bit Ao Byte / Manual do Maker".

Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.