Expresso Lite como App Android

De Wiki Expresso V3
Ir para: navegação, pesquisa

Além da utilização como uma aplicação web, também é possível utilizar o Expresso Lite como uma app propriamente dita, em um dispositivo Android. Para isto, o Lite conta com uma integração com a biblioteca Apache Cordova, que é a versão open-source do projeto PhoneGap.

Esta app conta apenas com a parte HTML/JavaScript do Expresso Lite. Por isto, ela ainda precisa que o Expresso Lite esteja instalado em algum servidor web para que este servidor responda às chamadas AJAX. Ou seja, a app não contém a parte de backend, somente a de frontend.

Conteúdo

O pacote APK

Um pacote APK é um arquivo contendo uma aplicação Android, que pode ser carregado no dispositivo de duas maneiras:

  • Baixando-se através da loja Google Play
  • Carregando-se manualmente o APK no dispositivo

Para fins de desenvolvimento e teste, o pacote APK será carregado manualmente no seu dispositivo Android.

Pré-requisitos para gerar o pacote

Para gerar o pacote APK a ser instalado em dispositivos Android basta utilizar o script build/build_cordova.sh. Porém, antes de rodar este script, é necessário cumprir alguns requisitos.

É necessário ter instaladas as seguintes ferramentas em seu computador:

  • Node.js (necessário para instalar o Cordova)
  • Cordova
  • Java (necessário para a Android SDK)
  • Android SDK
  • KVM (não é obrigatório, mas vai melhorar o desempenho do emulador consideravelmente!)
  • Em alguns ambientes, pode ser necessário instalar o Ant (para instalá-lo utilize 'sudo apt-get install ant')

Instalando o Node.js e o Cordova

Antes de instalar o Cordova, é necessário instalar o Node.js. Para instalá-lo, siga as instruções em: Instalando o Node.JS.

Uma vez que o Node.js esteja instalado, podemos instalar o Cordova. Para isso, basta rodar:

 sudo npm install -g cordova

Para evitar erros com a ferramenta aapt do android, instale os seguintes pacotes:

 sudo apt-get install lib32stdc++6
 sudo apt-get install lib32z1

Instalando a SDK do Android

A Android SDK é necessária para se poder gerar o pacote do Android com o Cordova. As instruções para instalação estão disponíveis em Instalando a SDK do Android

Instalando a KVM

O pacote KVM do Linux permite que as VMs dos emuladores do Android utilizem recursos que vão acelerar seu desempenho consideravelmente. De fato, não é muito recomendável utilizar os emuladores sem este pacote!

Para instalá-lo, utilize as instruções disponíveis aqui.

Configurando o endereço do backend

Conforme explicado anteriormente, a app do celular não conta com a parte de backend do Expresso Lite. Por isso, ela precisa saber em que URL o Expresso Lite está disponível para que ela possa direcionar as chamadas AJAX a este endereço.

O endereço do backend do Expresso Lite pode ser configurado no seguinte arquivo:

 ExpressoLite/build/cordova/cordova-build-src/www/common-js/CordovaConfig.js

lá dentro, basta alterar a seguinte linha:

   liteBackendUrl: 'https://m.expresso.serpro.gov.br'

ATENÇÃO: o endereço não deve conter uma / no final!

Gerando a aplicação

Uma vez que tudo esteja configurado, basta rodar o script de build para testar o programa. O script de build pode ser rodado de vários modos:

Rodar no emulador

 ./build_cordova.sh -emulate

Gera a aplicação e abre o emulador padrão da Android SDK para rodá-la;

Rodar em dispositivo Android

 ./build_cordova.sh -run

Gera a aplicação e a roda em um dispositivo Android que esteja conectado ao computador. O dispositivo precisa estar com o Modo Desenvolvedor ativado e, nas configurações do modo desenvolvedor, estar permitindo Depuração USB.

Se nenhum dispositivo for encontrado, o Cordova vai utilizar um emulador. Para saber se um dispositivo está pronto para uso, utilize o seguinte comando:

 adb devices

Ele lista os dispositivos atualmente disponíveis.

Regerar a aplicação

 ./build_cordova.sh -regenerate

Se forem realizadas mudanças profundas na estrutura do projeto Cordova (como adicionar um novo plugin), pode ser necessário regerar todo a aplicação para que a nova estrutura entre em vigor.

Ferramentas pessoais
Espaços nominais

Variantes
Ações
Navegação
Ferramentas