Cordova


Conhecendo o Cordova

O Cordova é um projeto open source da Apache, criado inicialmente pela Adobe com o nome de PhoneGap e depois liberado para a comunidade de desenvolvedores. Atualmente existe o projeto PhoneGap também com código aberto, onde sua base é o Cordova porém com alguns recursos a mais. O Cordova é uma API que permitem aos desenvoldedores de Aplicativos mobile acessarem recursos do Aparelho, utilizando Javascript.

O Cordova é disponível para as plataformas:

  • Android
  • iOS
  • BlackBerry
  • Windows Phone
  • Palm
  • Bada
  • Symbiam

Configurando o ambiente de desenvolvimento

Atualizando o repositório

Para iniciarmos com o tutorial, vamos fazer o download da lib do cordova e atualizar o repositorio local usando o comando abaixo:

mvn install:install-file -DgroupId=org.apache.cordova -DartifactId=cordova -Dversion=2.8.0 -Dfile=cordova-2.8.0.jar -Dpackaging=jar

Estamos usando a versão 2.8.0 (versão mais atual) do Cordova. No final dessa página você encontra um link de download, quando você descompactar o arquivo, você vai encontrar uma pasta lib, copie o arquivo para pasta anterior, onde está o pom.xml. e execute o comando acima que será executado corretamente.

Instalando o Android SDK

Precisamos agora, baixar o Android SDK para que possamos configurar o plugin, vamos utilizar a última versão disponivel em: http://developer.android.com/sdk/index.html.

Assim que você fizer o download, descompacte o arquivo no local desejado (nesse exemplo criei uma pasta C:\android, onde descompactei o conteúdo do arquivo), pois precisaremos dessa informação para realizar a configurar do plugin do Android.

Agora com o ambiente preparado, já podemos configurar o plugin no pom.xml do projeto, mas antes temos mais uma coisa a fazer...

Criando o AVD

Para que o ambiente esteje finalmente pronto para trabalharmos, precisamos configurar um Dispositivo Virtual, caso contrário não será possível iniciar o emulador e efetuar os testes. Para isso acessar a pasta do SDK/tools (Nesse exempplo, C:\android\adt-bundle-windows-x86-20130522\tools) e executar o comando:

android avd

Será carregada a tela do Gerenciador de Dispositivos, crie um dispositivo e coloque o nome de Android_4_2_2.

Feito isso, podemos iniciar o projeto, vamos ver como configurar o plugin do maven para Android e como criamos uma aplicação utilizando Javascript que acessar os recursos do celular.


Configurando o plugin do Android

Primeiramente como vamos trabalhar com Projeto Android, o empacotamento da aplicação é em formato apk, para isso configuramos no pom.xml o seguinte: <packaging>apk</packaging>.

Próximo passo é aconfiguração do Plugin, segue abaixo um exemplo:

  <plugins>
    ...

    <plugin>
      <groupId>com.jayway.maven.plugins.android.generation2</groupId>
      <artifactId>android-maven-plugin</artifactId>
      <version>3.6.0</version>
      <configuration>
        <sdk>
          <path>C:\android\adt-bundle-windows-x86-20130522\sdk</path>
          <platform>17</platform>
        </sdk>
        <emulator>
          <avd>android_4_2_2</avd>
          <wait>45000</wait>
        </emulator>
        <deleteConflictingFiles>true</deleteConflictingFiles>
        <undeployBeforeDeploy>true</undeployBeforeDeploy>
      </configuration>
      <extensions>true</extensions>
    </plugin>
  </plugins>

Compilando e executando um programa no emulador

Abaixo vamos ver os passos necessários para compilar e executar o programa no emulador

Compilando e gerando o apk.

mvn install android:apk

Assim que o pacote for gerado, o próximo passo é iniciar o emulador com o devide que configuramos (Android_4_2_2), para isso digite:

mvn android:emulator-start

Se olharmos dentro da configuração do plugin, temos a configuração do emulador também

  <emulator>
    <avd>android_4_2_2</avd>
    <wait>45000</wait>
  </emulator>

A Tag avd representa o dispositivo que configuramos no Gerenciador, a Tag wait é um timeout para que o emulador seja iniciado, se nesse tempo ele não estiver carregado, é gerada uma exception e o start é interrompido.

Assim que o emulator estiver iniciado, já podemos fazer o deploy da aplicação e executar a mesma no emulador, basta digitar:

mvn android:deploy android:run

Se tudo estiver correto a sua aplicação será carregada no emulador e você pode fazer testes com a mesma.


Dica

Dica: Se você quiser fazer testes executando diretamente o aplicativo no celular, podemos fazer o seguinte:

mvn clean install android:deploy android:run -Dandroid.device=usb

Ou adicionar no pom a configuração do device no pom do projeto para que o deploy seja via USB

<device>usb</device>

Conclusão

Nesse exemplo vemos várias coisas juntas, como configurar um projeto maven para trabalhar com o plugin do android, vemos também como construir aplicações utilizando o framework Cordova, onde podemos contruir uma aplicação para celular sem utilizar código nativo, somente com html e javascript, como montar o ambiente de desenvolvimento e rodar uma aplicação no emulador.



Download

Para fazer o download do exemplo, clique em: Exemplo do tutorial.