Clique aqui para ler este artigo em pdf
Clique aqui para ler todos os artigos desta edição
Desenvolvendo em BREW
Parte I - Uma introdução
O desenvolvimento em BREW tem sido mistificado como sendo difícil e pouco produtivo. Gostamos de colocar que BREW é para programadores C/C++ o que J2ME é para programadores Java, ou seja, um programador C/C++ se sentirá tão confortável trabalhando com BREW, já que essa é a linguagem base para se desenvolver na plataforma, quanto um programador Java em J2ME.
Nesse artigo cobriremos todos os passos necessários para iniciar o desenvolvimento de aplicações nessa tecnologia. Mostraremos como instalar e configurar o ambiente, a estrutura básica de uma aplicação em BREW e explicaremos o código de um exemplo estilo “Hello World” escrito em C e outro equivalente em C++.
Esse é o primeiro de uma série de artigos sobre desenvolvimento
Ambiente de desenvolvimento
Os desenvolvedores BREW trabalham com três ferramentas básicas, o BREW SDK, o BREW Tools e um ambiente de desenvolvimento C/C++. O Visual C++, pertencente ao MS Visual Studio, é escolhido como ambiente de desenvolvimento deste artigo, pois é o que melhor se integra ao BREW SDK através do BREW Add-ins Plug-in, além de ser o ambiente recomendado pela Qualcomm e ao qual ela dá suporte.
Existe ainda a possibilidade de trabalharmos
A instalação do BREW SDK e do MS-Visual Studio não tem uma ordem específica já que são ferramentas independentes. Porém, o BREW Add-ins Plug-in só deve ser instalado após a configuração e instalação das duas ferramentas para que as mesmas sejam integradas.
A versão do MS Visual Studio escolhida para nossa instalação foi o MS Visual Studio .Net 2003 (as únicas versões oficialmente suportadas pelo BREW Add-ins Plug-in são o Visual Studio 6.0 e o .Net 2003). A instalação do MS Visual Studio foge do âmbito desse artigo, porém é uma instalação de simples wizard. A única ferramenta necessária a ser instalada no MS Visual Studio é o Visual C++, as outras ficam a cargo do desenvolvedor.
Para instalar o BREW SDK é necessário que o desenvolvedor já tenha se cadastrado no site da Qualcomm (https://brewx.qualcomm.com/brew/sdk/register.jsp). O cadastro é gratuito, mas necessário para fazer o download da ferramenta. Após o cadastro, é fornecido um link chamado “Click here to get BREW SDK now”. Ele leva a uma lista de versões do BREW SDK. Nossa escolha foi a versão 3.1 que é a mais atual e com mais recursos. Porém, todos os exemplos do artigo devem funcionar perfeitamente em qualquer versão do SDK.
Para instalarmos o BREW Add-ins Plug-in, basta selecionar o link abaixo da lista de versões chamado “Miscellaneous Development Tools ”. Após acessar esse link, vá para a sessão “BREW Add-Ins 3.0 for Microsoft Visual Studio” e selecione o link “install”. Após isso, é só seguir o guia.
A instalação do BREW SDK é um wizard simples, não há configurações que precisem de maiores explicações. O único detalhe ao qual o desenvolvedor deve ficar atento é que no fim da instalação é questionado se o instalador deve configurar automaticamente a variável de ambiente BREWDIR (Figura 1). O desenvolvedor deve deixar o instalador configurar essa variável automaticamente.
Se por algum motivo não for possível realizar essa configuração devido, por exemplo, a restrições de escrita no registro do MS Windows, podemos registrá-la mais tarde nas variáveis de ambiente do MS Windows. A instalação do BREW Add-ins Plug-in também não precisa de maiores explicações, o desenvolvedor só deve estar certo que possui o Visual Studio e o BREW SDK antes de começar a instalar o plug-in.
Figura 1. Configuração da variável de ambiente BREWDIR.
Estrutura de uma aplicação em BREW
A maior dificuldade de desenvolvedores iniciantes em BREW é entender como uma aplicação se divide, a finalidade de cada um dos arquivos que a compõem e a relação que existe entre esses arquivos. A Figura 2 ilustra essa organização e relação.
Cada aplicação é composta por apenas um Módulo, porém pode se utilizar de outros recursos como bibliotecas de funções. O módulo é o código executável da aplicação e pode conter vários Applets criando uma suíte de pequenos aplicativos. O Applet é a classe principal da aplicação e seu ponto de entrada tanto para inicialização como para recebimento de eventos.
Figura 2. Aplicação BREW.
Uma aplicação precisa de quatro arquivos para ser executada:
·.MIF: é o descritor da aplicação. Nele estão parâmetros de configuração como o nome do Applet, permissões de acesso a recursos do dispositivo, como sistema de arquivos, seus ícones e as informações sobre o desenvolvedor da aplicação. É gerado pelo BREW MIF Editor ilustrado na Figura 3. Na sessão “Criando nossa aplicação” aprenderemos a usar o MIF Editor.
·.BID: arquivo que contém o identificador único da aplicação. Seu objetivo é gerar uma assinatura digital única, controlada pela Qualcomm, para cada aplicação diminuindo as chances de pirataria e instalação de softwares maliciosos na plataforma BREW. Poder ser gerado pelo MIF editor caso o desenvolvedor ainda não tenha acesso a extranet da Qualcomm (veja em links seu endereço). Esse identificador, quando gerado pelo MIF editor, é usado somente em tempo de desenvolvimento quando o desenvolvedor deseja testar a aplicação em um emulador Brew (incluso na instalação do SDK). Para injetar a aplicação no handset deve-se gerar o identificador único no site da Qualcomm.
Figura 3. MIF Editor.
·.MOD: contém o código executável da aplicação. É gerado por um compilador ARM (vide Nota 1) para ser injetado no handset. Quando estamos executando nossa aplicação no emulador não precisamos de um compilador ARM. O emulador executa o código compilado
Nota 1. O que é ARM?
A ARM Corp. (http://www.arm.com) é uma empresa que desenvolve micro