Testando sem comprar: emuladores do S60, WM, Android e Palm

Testando sem comprar: emuladores do S60, WM, Android e Palm
O desenvolvimento de aplicativos para smartphones é uma área em rápido crescimento. Hoje em dia, cada vez mais se desenvolve aplicativos complexos utilizando Ajax e outras linguagens voltadas para a web, dando origem a serviços como o Gmail e o Meebo, que embora rodem dentro do navegador, substituem as funções (e até certo ponto mesmo a aparência) de aplicativos nativos. A grande vantagem de aplicativos web é que eles podem ser usados por qualquer um com conexão com a web e um navegador minimamente compatível, mas eles também tem a desvantagem de consumirem uma boa dose de processamento.

No caso dos smartphones, as limitações dos navegadores e no tamanho das telas fazem com que a maior parte destes aplicativos fiquem inutilizáveis. Serviços que oferecem versões reduzidas, em html, como no caso do Gmail continuam acessíveis, mas serviços como o Meebo e o Google Talk não. A resposta são os widgets, aplicativos simplificados, que embora sejam escritos usando javascript (e outras linguagens web) e sejam na verdade executados pela engine do navegador, ganham status de aplicativos nativos quando executados.

Apesar disso, os widgets se destinam a aplicativos simples, que exibem algumas informações específicas. Para aplicativos mais complexos, a melhor opção continua sendo desenvolver um aplicativo nativo. Surge então a velha pergunta: como testar o aplicativo em diversas versões do sistema, para ter certeza que ele realmente vai rodar em diversos aparelhos, sem precisar realmente comprar um de cada para testar?

Pensando nisso, quase todos os fabricantes disponibilizam emuladores com imagens pré-carregadas de seus sistemas operacionais, como parte do SDK, a suíte de desenvolvimento para a plataforma. Existem emuladores para o S60, S40, Windows Mobile, Android e até mesmo para o Palm OS Garnet:

m16fed468

Os emuladores não são uma representação exata do que você vai encontrar nos aparelhos reais, pois não incluem todos os aplicativos e não oferecem a mesma experiência que você teria ao usar o smartphone em “carne e osso”. Apesar disso, eles atendem bem ao propósito de testar aplicativos e detectar problemas de compatibilidade entre diferentes versões do mesmo sistema operacional e são por isso extremamente populares entre os desenvolvedores.

Naturalmente, eles são também muito úteis quando você tem curiosidade em conhecer melhor como um determinado sistema funciona, sem ter acesso direto a aparelhos baseados nele. Quer conhecer a nova versão do do Android ou do Windows Mobile, ou testar a nova versão do Opera para o Symbian? Um emulador pode ser a solução.

Começando pelo estreante, o SDK do Android, incluindo o emulador está disponível no:
http://code.google.com/android/download.html

Ele é um caso raro, onde o emulador está disponível tanto para Windows quanto para Linux, o que não é de se estranhar, já que ele é um sistema baseado em Linux.

No caso do Windows, descompacte o arquivo e acesse a acesse a pasta “tools” dentro da pasta criada. Se você tentar executar o “emulator.exe” clicando sobre ele diretamente, vai ver apenas uma janela do prompt do MS-DOS sendo aberta e fechada muita rapidamente. Isso acontece por que ele precisa que seja especificado o diretório onde são armazenados os dados como parâmetro, o que não é feito quando você simplesmente clica sobre o arquivo.

Para resolver o problema, você tem duas opções. A primeira é acessar o “Painel de Controle > Sistema > Avançado > Variáveis de ambiente”, clicar sobre o “Variáveis do sistema > Path” e adicionar o caminho completo até o diretório, como em “C:androidtools”. A segunda opção é abrir o emulator.exe usando o prompt do MS-DOS, acessando a pasta “tools” e rodando o comando “emulator.exe -datadir .” dentro dela. No Linux o comando é o mesmo:

m73f3b750

Os emuladores para o S60 (e também para o S40, caso esteja interessado) estão disponíveis no:
http://www.forum.nokia.com/main/resources/tools_and_sdks/

O link direto para os SDKs da plataforma S60 é o:
http://www.forum.nokia.com/main/resources/tools_and_sdks/S60SDK/

Por incluírem todas as ferramentas de desenvolvimento, os pacotes são grandes e você precisa fazer um cadastro antes de poder baixar os arquivos, mas em compensação você tem acesso aos emuladores de todas as versões do sistema ainda em uso, incluindo versões lançadas recentemente. O emulador do S60 quinta edição, por exemplo, foi disponibilizado antes mesmo que o 5800 Xpress Music (o primeiro aparelho baseado na plataforma) chegasse ao mercado. Infelizmente, os emuladores estão disponíveis apenas em versão Windows, mas no Linux isso pode ser resolvido usando uma máquina virtual.

m4a820ac5

O emulador precisa que o Perl esteja instalado. A forma mais fácil de instalá-lo no Windows é seguir as instruções do http://win32.perl.org, baixando e instalando o Active-Perl. Outra dependência é o Java, que você pode baixar no http://java.sun.com.

Caso o instalador continue exibindo um erro de que não foi capaz de encontrar o perl.exe, acesse o “Painel de Controle > Sistema > Avançado > Variáveis de ambiente” e crie uma nova variável, chamada “perl.exe”, apontando para o “C:Perlbinperl.exe”, que é a localização padrão ao instalar através do Active Perl:

m3c128220

Depois de instalado, é só abrir o emulador através do ícone no iniciar. Uma dica para que você não caia no mesmo erro que cometi da primeira vez que tentar utilizá-lo é que o emulador não funciona através de uma conexão remota no rdesktop (ele fecha sozinho durante o carregamento); funciona apenas localmente:

m73ed171e

m12fbe0c9

Como o S60 terceira edição não oferece suporte a touchscreen, o uso no PC é um pouco inconveniente, já que você precisa usar as setas do teclado e os botões no emulador para conseguir navegar entre as funções, diferente do S60 quinta edição onde você pode simplesmente usar o mouse. Alterando as configurações é possível simular vários tipos de aparelho: com tela em modo retrato, tela em modo paisagem, com teclado, sem teclado, etc.

Para que o emulador consiga utilizar a conexão com a web, acesse o “Tools > Device Connection” (dentro da pasta com os ícones no iniciar) e ative o “WLAN”, que compartilha a conexão com a web do PC, que é vista dentro do emulador como uma conexão de rede wireless:

34941888

A ferramenta de desenvolvimento para o S60 é o Carbide, disponibilizado pela própria Nokia através do http://forum.nokia.com/main/resources/tools_and_sdks/carbide_cpp/. A linguagem nativa do sistema é o C++, mas existe um excelente suporte também para o desenvolvimento em Java.

Naturalmente, é possível desenvolver também em outras linguagens, como no caso do Python, que permite desenvolver aplicativos de forma muito rápida. A desvantagem do Python é que é necessário que os aparelhos tenham o interpretador instalado para poderem rodar os aplicativos, mas como ele é de livre distribuição, isso não chega a ser um grande problema, já que você pode incluí-lo diretamente no pacote do seu aplicativo.

Outro emulador bastante popular é o do Windows Mobile, que pode ser baixado através do http://www.microsoft.com/downloads/ (faça uma pesquisa por “Windows Mobile 6 SDK”). Como pode imaginar, o emulador roda apenas sobre o Windows, mas, diferente do emulador da Nokia, pode ser usado através do rdesktop, de forma que você pode simplesmente instalá-lo em qualquer máquina da rede com o Windows e acessá-la remotamente.

A pasta inclui atalhos para imagens do Windows Mobile Classic (a versão para smartphones, sem touchscreen) e diversas imagens do Windows Mobile Professional, simulando diversas resoluções de tela, do tradicional QVGA ao square VGA (640×640) que apesar de suportado pelo sistema não chegou a ser usado em nenhum aparelho real.

43ee97b2

O emulador permite simular uma conexão GPRS para conexão com a web, mas para ativá-la é necessário executar um conjunto de passos. Comece abrindo o “Cellular Emulator” cujo atalho está disponível na mesma pasta. Dentro dele, acesse a aba “Network” e veja qual é a porta que está sendo usada por ele (COM5 no exemplo), que aparece no campo inferior esquerdo:

257af100

Em seguida, acesse a opção “File > Configure” na janela do emulador e, dentro da aba “Peripherals” especifique a porta usada pelo Cellular Emulator no campo “Serial port 0”. Para que a mudança entre em vigor, é necessário usar a opção “File > Reset > Soft” pare reiniciar o emulador:

2f34f67a

Depois do reset, o ícone da Antena passará a mostrar as barras de sinal, indicando que o emulador ativou a conexão. Entretanto, ao abrir o IE (ou qualquer outro aplicativo que acesse a rede) ele exibirá uma mensagem de erro, avisando que não conseguiu encontrar uma conexão.

Para resolver este último empecilho, clique no “Configurar”, “Adicionar uma conexão de Modem” e escolha o “Linha celular (GPRS)” como modem na janela seguinte. Deixe os campos do ponto de acesso, usuário, senha e domínio nas janelas seguintes em branco e clique no Concluir e em seguida no “Ok” para finalizar a configuração. Com isso o emulador passará a navegar normalmente (embora lento devido à simulação de uma conexão via rede celular).

m771c9f88 1bb30f15

Se o emulador ainda não navegar mesmo depois de feita toda a configuração, volte ao Cellular Emulator e clique na opção “Switch to 2G”. A emulação de rede 3G não funciona estavelmente em muitas versões do emulador, causando o problema.

O desenvolvimento para o Windows Mobile é focado em torno do Visual Studio, que permite desenvolver em C#, Visual Basic .NET ou Visual C++, de acordo com suas preferências e o nível de desempenho que é esperado do aplicativo. Você pode ver mais detalhes no:
http://msdn.microsoft.com/en-us/windowsmobile/

Concluindo, existe também um emulador do PalmOS Garnet, o “Garnet OS Simulator”, que está disponível no: http://www.accessdevnet.com/index.php/ACCESS-Tools/View-category.html

Baixe o “Garnet OS Development Suite > Full version” que inclui todos os componentes. Ele simula um Palm baseado em processador ARM (como o Tungsten), com a possibilidade de rodar aplicativos (basta clicar com o botão direito sobre a barra da janela e usar a opção “Install > Database”) e até mesmo acessar a web. Embora poucos ainda desenvolvam para a plataforma, o emulador é uma boa forma de continuar usando aplicativos para o PalmOS de que você eventualmente dependa, usando um PC ou notebook.

O pacote inclui também o “Garnet OS Emulator”, que é na verdade o emulador para versões antigas do Palm OS, anteriores à migração para os processadores ARM.

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X