Whats new? | Login | Parceiros
Cadastre-se | Atendimento | RSS
+ .net:
artigos   |   vídeos   |    cursos   |    mais

SmartPhones

Veja neste artigo de Jefferson Luis Junglaus, como trabalhar com equipamentos SmartPhones.

JEFFERSON LUIS JUNGLAUS
Jefferson Luis Junglaus (jefferson@suatecnologia.com.br) - Cursando Ciência da Computação(UNIRONDON), reside em Cuiabá - MT, atualmente trabalhando no Grupo City Lar no desenvolvimento de Aplicações Web com ASP.NET e C#. Apaixonado por tecnologia. (...


Ver space do autor


Estatísticas:
Visualizações:
22015
Favoritado:
 5 vez(es)
Conteúdo:
Didática:
Utilidade:
2 0
votos: 2

Serviços:



SmartPhones

Desenvolvendo Aplicativos para SmartPhones

Basicamente um SmartPhone é a união de dois depósitos, o Pocket PC e o Celular bem conhecidos no mercado, o SmartPhone foi desenvolvido usando as melhores características dos dois dispositivos.

O desenvolvimento para a linha SmartPhone é muito atrativo e fácil, mas devemos tomar alguns cuidados, pela sua interface pequena. Os SmartPhones foram planejados levando como requisitos o tamanho da tela de um celular e as melhores qualidades do Pocket PC.

A Interface de usuário(Tela ou UI – User Interface) tem aproximadamente 176X200 pixel com aproximadamente 65.535 tonalidades de cores, permitindo  trabalhar com design de aplicação como se fosse um Desktop.

Na hora de desenvolvermos aplicações para SmartPhones, devemos nos preocupar com o modo de desenvolvimento, pelos recursos de navegação limitado, que o usuário usará apenas uma mão(one-hand), a navegação é feita sob a forma de ícones, etc.

O SmartPhone traz muitos recursos do Pocket PC como Outlook, ActiveSync, MediaPlayer, instalação de aplicativos facilitada e o principal o Compact Framework já instalado.

Com SmartPhone temos informação em qualquer lugar e a qualquer momento, nesse artigo mostrarei como fazer um Aplicativo que consuma um WebService, esse aplicativo irá exibir um relatório de vendas do dia, a prazo e a vista e lucro do dia, de uma Empresa.

A Figura 1 demonstra um SmartPhone.

 

 

Figura 1. Sistema do SmartPhone em execução

SQL referente a Base de Dados Sql Server

Devemos criar a Tabela que armazenará o resultado de vendas diárias da Empresa, essa tabela será acessada pelo o WebService, a Listagem 1  contem o Script SQL.

 

Listagem 1. Script SQL

create database webmobile;

create table resumodia(data datetime primary key, vendavista decimal(9,2),

vendaprazo decimal(9,2), lucro decimal(9,2));

insert into resumodia values('01/02/2005', 5000, 4500, 2500);

insert into resumodia values('02/02/2005', 8000, 6500, 4000);

 

Criando o WebService “WSResumoDia”

Pronto, agora com o nosso banco de dados criado devemos criar o webservice que acessará os dados do SQL Server, o nosso WebService conterá uma simples método que retornará um tipo DataSet(trafega em formato de XML) resultado da Consulta SQL, será passado como parâmetros nesse Método uma Data, a data será informada no SmartPhone.

Criaremos um ASP.net WebService, clique em File->New|WebSite escolha a linguagem C#, depois escolha o template ASP.net WebService, em Location selecione HTTP e digite (http://localhost/WSResumoDia), clique em OK, será criado o Projeto, temos que fazer uso dos seguintes namespaces  System.Data.OleDb e System.Data, veja o código do WebMethod na Listagem 2.

 

Listagem 2. Código do WebMethod

  [WebMethod(Description = "Retorna um DataSet com Resumo de Venda do Dia")]

    public DataSet ResumoDia(DateTime Data)

    {

        OleDbConnection conexao = new OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;User ID=sa;Initial Catalog=webmobile");

        OleDbCommand comando = new OleDbCommand("SELECT * FROM resumodia WHERE DATA = '" + Data.ToString() + "'", conexao);

        OleDbDataAdapter Adaptador = new OleDbDataAdapter(comando);

        DataSet ds = new DataSet();

        Adaptador.Fill(ds, "ResumoDia");

 

        return ds;

 

        conexao.Close();

        conexao.Dispose();

        comando.Dispose();

        Adaptador.Dispose();

        ds.Dispose();

    }

Instalando o SDK SmartPhone

Antes de começarmos a desenvolver nossa Aplicação no Visual Studio devemos instalar o SDK, que é um complemento do Visual Studio para desenvolvimento de Aplicações para SmartPhone, (http://www.microsoft.com/downloads/details.aspx?familyid=a6c4f799-ec5c-427c-807c-4c0f96765a81&displaylang=en). Após o SDK instalado já podemos desenvolver aplicativos para SmartPhones em C++, VB.net ou C#.

Criando Aplicação SmartPhone

Para criarmos a primeira Aplicação abra o Visual Studio 2005 que foi usado nesse artigo na versão 2003 funciona perfeitamente, clique em File->New|Project, selecione o tipo do Projeto(Project Type) como Visual C# Projects e o Template Smart Device Application, defina o nome da aplicação para ResultadoDia, e clique em OK, será aberta uma segunda caixa (Figura 2) de seleção aonde especificaremos a plataforma que iremos desenvolver e o tipo do projeto, na plataforma selecionaremos SmartPhone e no tipo do projeto Windows Application, clique em OK, será criado uma nova Aplicação SmartPhone, por padrão vem instalado no Visual Studio dois SDK para desenvolvimento de Smart Devices, para Pocket PC e Windows CE.

 

Figura 2. Lista de SDK’s instalados.

Percebe-se com a criação da nova aplicação que temos um formulário pequeno. Desenvolver para SmartPhones é quase a mesma coisa que desenvolver para Pocket PC, mas cada dispositivo tem suas adaptações.

Olhando na ToolBox percebe-se que muitos controles estão desabilitados para desenvolvimento em SmartPhones, já em Pocket PC poucos estão desabilitados. O controle DataGrid está habilitada, mas seu uso não é suportado.

Os controles que estão habilitados para desenvolvimento de aplicações SmartPhones estão listados na (Tabela 1).

 

Controle

Descrição

Label

Pode ser usado para identificar campos ou para exibir textos.

TextBox

Campo de entrada de dados. É usado para receber informações do tipo texto, em uma linha simples ou mult-linha.

MainMenu

Usado para adicionar menus nos formulários.

CheckBox

Usado para criar caixas de checagem do tipo bi/tri.

PictureBox

Usado para inserir imagens no device.

Panel

Usado para agrupar controles dentro dos formulários.

DataGrid

Este controle não é suportado pelo SmartPhone 2003. Controles DataGrid, quando populados com grandes quantidades de dados tem um consumo de memória muito elevado por isso, O SDK SmartPhone 2003 não suporta o uso de DataGrids, pois possui apenas 16 MB de Ram.

ComboBox

Usado para exibir listagens de valores para o usuário.

ListView

Usado em associação com o ImageList, serve para criar listagens.

TreeView

Usado em associação com o ImageList, serve para criar árvores de listagens.

HScrollBar

Usado para criar barras de rolagens horizontais no form ou em controles específicos.

VScrollBar

Usado para criar barras de rolagens verticais no form ou em controles específicos.

Timer

Este controle não é visível em tempo de execução. Permite que uma determinada ação seja executada em intervalos pré-definidos no controle.

ProgressBar

Usado para exibir uma barra de progressão caso uma tarefa longa esteja sendo executada.

ImageList

Este controle não é visível em tempo de execução. Seve para cria uma listagem de imagens que serão usadas em controles que possuam esse recurso.

Tabela 1. Descrição dos controles Padrões disponível para desenvolvimento de SmartPhones.

Vamos criar os menus da nossa Aplicação, por padrão o controle MainMenu já vem adicionado em nosso formulário, vamos criar dois menus(colunas), uma Sair e a outra Consultar, não é possível criar sub-menus na primeira coluna, altere a propriedade Name do formulário principal para frmPrincipal e a propriedade Text para Resultado do Dia, renomeie o arquivo Form1.cs para Principal.cs.

Coloque 7 controles Labels e 1 TextBox altere o Nome(Name) para txtData, as propriedades dos controles Labels devem ficar idêntica a (Tabela 2).

 

Name

Text

ForeColor

TextAlign

lblConsulta

Data Consulta

ControlText

TopLeft

Label1

Avista:

ControlText

TopRight

Label2

Aprazo:

ControlText

TopRight

Label3

Lucro:

ControlText

TopRight

lblAvista

0,00

Blue

TopLeft

lblAprazo

0,00

Blue

TopLeft

lblLucro

0,00

Blue

TopLeft

Tabela 1. Propriedades dos controles Labels.

O formulário principal deve ficar idêntico a (Figura 3).

 

Figura 3. Após as devidas alterações o formulário principal irá ficar parecido com esse.

Consumindo o WebService “WSResumoDia”

No Solution Explorer clique com o botão direito em References e clique em Add Web Reference após ter configurado a URL e a Web Reference name clique em Add Reference observe a Figura 4.

 

Figura 4. Processo de referência a um WebService e suas configurações

Agora vamos colocar os código da aplicação, no evento Click do MenuItem Sair coloque o código:

 

Application.Exit();

 

A Listagem 3 contem o código responsável por acessar o WebService e buscar as informações para um DataSet local, e exibi-los na tela do dispositivo.

 

Listagem 3. Código do evento click do MenuItem Consultar.

WSResumoDia.Service1 ws = new WSResumoDia.Service1();

DataSet ds;

ds = ws.ResumoDia(Convert.ToDateTime(txtData.Text));

if (ds.Tables[0].Rows.Count > 0)

{

       lblAPrazo.Text = ds.Tables[0].Rows[0]["vendaprazo"].ToString();

       lblAvista.Text = ds.Tables[0].Rows[0]["vendavista"].ToString();

       lblLucro.Text = ds.Tables[0].Rows[0]["lucro"].ToString();

}

 

Agora basta compilar e executar a aplicação e informar a Data de Consulta e clicar em Consultar que serão exibidas as informações referente aquele dia, o Resultado Final da Empresa. Veja a ilustração do exemplo em execução na Figura 5.

 

Figura 5. Exemplo em execução

Conclusões

Tivemos nesse artigo uma introdução do que é SmartPhone e um exemplo de como consumir WebServices em SmartPhones. Com o uso de WebService podemos disponibilizar as nossas regras de negócios para qualquer dispositivo móvel com extrema facilidade.

Foi utilizado para a construção do exemplo do artigo:

·         Microsoft SQL Server 2000

·         Microsoft Visual Studio 2003

 

Um Grande Abraço a Todos





Participe! Inclua um comentário
[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.


paulo
26/4/2007 17:45
link para SDK Nao eh possivel baixar o Sdk para smartphone atraves do link no artigo. Busquie no site mas há varios sdk, nao sei qual deles abrir.

[responder]

 
Glebe Jr.
9/5/2007 14:15
RE:   Olá Paulo, para desenvovler usando o projeto citado no próprio Visual Studio já tem ele instalado, que é a versão do windows mobile 2003. Para as versões mais novas você deve baixar o sdk do windows mobile 5 que tem na versão para pocket PC e na versão para smartphone (você escolhe qual desenvolver). Para o windows mobile 6, existem as versões standard e professional (smartphone e pocket pc, respectivamente). Neste link http://www.microsoft.com/downloads/details.aspx?familyid=3BAA5B7D-04C1-4EC2-83DC-61B21EC5FE57&displaylang=en vc tem um pacote completo de soluções para desenvovler com windows mobile 5.

[responder]
 
Matheus
12/7/2007 15:25
Diferenças Smartphone x Pocket Olá Jefferson, muito bom o artigo! Mas ainda tenho uma dúvida: Como raios faço pra que um projeto pra pocket (wmobile5) rode na boa num smartphone, visto que as opções de debug trazem só as opções do pocket? Tem algum jeito de gerar um executável pras duas plataformas ou tem que se fazer projetos diferentes mesmo e fim de papo? Obrigado!

[responder]

 
rodrigo
4/9/2007 14:17
link!! parabens pelo tutorial. busquei no link indicado o sdk..mas nao encontrei... se puderme mandar pelo menos o link ok..rdgalves@yahoo.com.br

[responder]

 
Day
10/9/2007 20:29
Java para Smartphones Como eu posso fazer um aplicativo para smart utilizando Java e webservice.

[responder]

 
Sergio
25/2/2008 10:19
Imagens importantes. Colega, Favor verificar por que as imagens não aparecem mais. Acredito que são importantes para ilustrar o que está sendo feito.

[responder]

 
Jefferson Luis Junglaus
25/2/2008 10:54
RE:   Amigo irrei re-editar o artigo incluindo as imagens obrigado pelo aviso. Deve ter acontecido algum problema quando houve a migração do servidor.

[responder]
 
Cassiano
29/2/2008 08:12
Exception Olá amigo. Parabéns pelo tópico. Gostaria que me esclarecesse uma dúvida. quando eu rodo esta aplicação, ela gera uma "exception: WebException" e não consegue se conectar ao weservice. Já testei ele no browser e ele está correto. Acredito que seja algum problema nas instalações do IIS ou SDK na minha máquina. Vc tem alguma idéia do que seja isto?

[responder]

 
RINALDO SCAMPINI
3/12/2008 09:05
Imagens Onde estão as imagens??????

[responder]

 



 
 

[Este post ainda não foi associado a uma sequência]


[Fechar]
Este post está disponível para assinantes da WebMobile ou para quem possui Créditos DevMedia.

  Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!

Plano conveniência – Neste plano este post custa R$ 0,00 (Compre agora)
Esse plano permite que você compre somente um post, pagando por ele seu preço sem desconto.

Plano ocasional: Aqui este post custa: R$ -1,00 (assinante) ou R$ -1,00 (não-assinante)
Este plano é ideal para quem tem interesse em mais de um post. Você compra um mínimo de R$ 50,00 em créditos e ganha, em média, 50% de desconto no preço do post. Compre Créditos agora!

Assinatura de Créditos (Plano econômico) – Aqui este post custa R$ -1,00
Este plano é ideal para quem tem interesse em muitos posts. Com esse plano você compra R$ 180,00 em créditos e ganha, em média, 80% de desconto no preço do post. Assine este plano agora!

> Saiba mais sobre o Sistema de Créditos DevMedia
DevMedia Group   www.devmedia.com.br   |   www.javafree.org   |   www.mrbool.com
2010 - Todos os Direitos Reservados a DevMedia Group - (21) 3382-5038