Desenvolvimento - Mobile
Desenvolvendo uma Aplicação – Contatos para Dispositivos Móveis em C#
Neste artigo será apresentada uma aplicação prática para Windows Mobile 6 Classic (Pocket PC) escrita em CSharp, com a finalidade do desenvolvimento de uma aplicação que grava os seus contatos na lista Contacts numa sessão do Outlook. Para isso fazer usaremos a biblioteca Microsoft.WindowsMobile.PocketOutlook.
por Marcos Roberto de MoraesNeste artigo será apresentada uma aplicação prática para Windows Mobile 6 Classic (Pocket PC) escrita em CSharp, com a finalidade do desenvolvimento de uma aplicação que grava os seus contatos na lista Contacts numa sessão do Outlook. Para isso fazer usaremos a biblioteca Microsoft.WindowsMobile.PocketOutlook.
Para facilitar o entendimento, está dividido em duas partes, a primeira com uma breve introdução ao Windows Mobile 6 Professional e ao cenário e a segunda parte é a que chamo de “mão na massa”.
Parte 1 - Breve introdução ao Windows Mobile 6 Professional
Para atender a nova realidade no mercado de dispositivos móveis, fusão dos dispositivos com mais funcionalidades, a Microsoft revisou as categorias adequando a esta evolução da indústria de dispositivos móveis. Veja o quadro comparativo das categorias anteriores com as novas categorias.
Categorias Anteriores |
Novas Categorias |
Windows Mobile for Pocket PC |
Windows Mobile Classic |
Windows Mobile for Pocket PC Phone Edition |
Windows Mobile Professional |
Windows Mobile for Smartphone |
Windows Mobile Standard |
Características da Interface dos dispositivos móveis
Os recursos disponíveis para navegação são limitados.
O sistema de navegação é feito sob a forma de ícones, e com um direcionador, o usuário alterna entre as opções disponíveis, basta clicar com um botão de seleção. Alguns aparelhos possuem tela te toque, outros não.
Usabilidade
Devido a pouca dimensão de tela disponível é de fundamental importância que o desenvolvedor simplifique a interface com poucos campos e imagens e use discretamente o recurso de tabs, nesta interface não temos a flexibilidade do mouse.
Pré-requisitos para o desenvolvimento:
Microsoft Visual Studio 2005
Microsoft ActiveSync 4.5
Tecnologia SDK Windows Mobile 6
O ActiveSync 4.5 e o Kit SDK poderá ser baixado nos endereços:
e
Caso não tenha nenhum dos dois, assim que baixá-los, instale primeiro o Microsoft ActiveSync 4.5, reinicie o sistema e instale o Kit SDK Windows Mobile 6.
Pocket Outlook
A biblioteca Microsoft Windows Mobile Pocket Outlook contém uma série de funcionalidades que através da API POMM (Microsoft Office Pocket Outlook Object Model) é responsável respectivamente pelo calendário, contatos e tarefas no dispositivo móvel.
Através do ActiveSync podemos fazer a sincronização com outros equipamentos, como o desktop ou notebook na empresa ou em casa.
Como dito antes, o cenário proposto é a agenda de contatos. Vamos conhecer um pouco sobre a classe contatos (Class Contacts).
Class Contacts
Contacts, é uma classe que contém propriedades que descrevem os vários métodos de cada contato instanciado, por exemplo: número de telefone, endereço de e-mail e endereço do contato, entre outros. Cada tipo de comunicação inclui várias propriedades de modo que um contato pode conter tanto um HomeTelephoneNumber como um MobileTelephoneNumber por exemplo.
Parte 2 - Mão na Massa
1) Inicie um novo projeto do Tipo Visual C# Smart Device: Windows Mobile 6 Professional. Dê o nome de Contatos.
2) Arraste para o formulário os controles abaixo:
Funcionamento
Assim que o usuário digitar os dados, ele poderá acessar o menu Opções e escolher a opção gravar. Na opção gravar será instanciada uma nova sessão com o Pocket Outlook, onde será adicionado o novo contato com os seus dados, e em seguida a sessão será fechada e as caixas de texto limpas. No final o usuário receberá confirmação da gravação.
Sessão e Classe do Outlook que serão usadas
OutlookSession: Classe responsável que identifica uma sessão Outlook Mobile.
Contact: Classe que provê acesso a um item da coleção de contatos numa sessão do Outlook.
3) Antes de continuarmos adicione a reference para a biblioteca Microsoft.WindowsMobile.PocketOutlook, desta forma: Clique com o botão direito no nome do projeto na solution Explorer, em seguida clique em Add Reference e escolha a biblioteca acima, selecionando-a e confirmando através do botão ok. Veja figura:
4) Declare a namespace logo no início do projeto, antes de continuar. Digitando:
using Microsoft.WindowsMobile.PocketOutlook;
4) Agora vamos ao código do botão gravar. Clique em opções, gravar e digite o cole o código abaixo:
private void menuItem2_Click(object sender, EventArgs e)
{
try
{
//Inicia uma nova session do Outlook
OutlookSession sessao = new OutlookSession();
//Instancia um objeto chamado contato da classe
//Contact
Contact contato = sessao.Contacts.Items.AddNew();
//Atribui os valores aos campos
contato.FirstName = txtNome.Text;
contato.LastName = txtSobrenome.Text;
contato.HomeTelephoneNumber = txtFoneRes.Text;
contato.MobileTelephoneNumber = txtFoneCel.Text;
contato.Email1Address = txtEmail.Text;
//Grava os contatos na Contacts session do
//Outlook
contato.Update();
//Mensagem para o usuário
MessageBox.Show("Seu novo contato foi adicionado com sucesso","Sucesso", MessageBoxButtons.OK, MessageBoxIcon.None, MessageBoxDefaultButton.Button1);
//Fecha a session
sessao.Dispose();
//limpa as caixas de texto
foreach (Control ctexto in this.Controls)
{
if (ctexto is TextBox)
{
ctexto.Text = "";
}
}
}
catch (Exception ex)
{
MessageBox.Show("Não foi possível adicionar o contato, aconteceu o erro: " + ex.Message.ToString());
}
}
Bom. Agora é só testar. Depois você poderá utilizar o ActiveSync para sincronizar a agenda do seu Pocket PC com o Outlook em seu PC/Notebook.
Conclusão
Aqui foi mostrado um recurso interessante para quem utiliza este cenário, pois você poderá com esse programa simples adicionar contatos, com os campos que desejar de forma mais rápida de que pela opção Contacts do próprio pocket.
Qualquer dúvida escreva para professormoraes_arroba_gmail.com.
Até o próximo artigo.
Marcos Roberto de Moraes
Administrador de Sistemas de Informação
- Como criar um player de audio para Windows PhoneDisp. móveis
- Windows Phone: Criando e lendo arquivos de textoDisp. móveis
- Inserindo, editando e lendo dados no Windows Phone com IsolatedStorageSettingsDisp. móveis
- Introdução ao jQuery MobileJavascript
- Entendendo a navegação entre páginas no Windows Phone 7Disp. móveis