Blog

Fala galera!! Tudo na paz?

Continuando nossos posts sobre Windows Phone, hoje vamos conhecer um pouco sobre Launchers and Choosers.

Mas o que seria isso?

Durante o processo de desenvolvimento de um software é comum nos depararmos com requisitos onde há a necessidade de acesso direto às APIs do sistema operacional. Se estivéssemos desenvolvendo um sistema para Windows (Forms, Services, etc.) seria relativamente simples realizar o acesso a determinadas API´s, porém, no Windows Phone, isso é um pouco diferente, isso porque no modelo de execução do Windows Phone, as aplicações são totalmente isoladas, tanto para armazenamento de arquivos como para a própria execução de aplicações.

Resumindo, não é possível que as aplicações acessem diretamente recursos do sistema operacional – Contatos, Câmera, SMS, triste não?

E agora, quem poderá nos ajudar?

Eis que surjem nossos salvadores – Launchers and Choosers! Yeeesss!!

De modo geral, Launchers and Choosers são API´s que, de forma controlada, permitem que você tenha acesso à algumas funções do seu telefone, como por exemplo seus Contatos, SMS e até mesmo ao MarketPlace (MarketplaceHubTask). Vale lembrar que, no Windows Phone, o modelo de execução só permite que uma aplicação seja executada por vez, isso faz com que seja necessário o gerenciamento do estado das páginas Ok?!

Uma melhor definição para cada um deles seria:

Launchers

Bibliotecas que permitem que sejam executadas determinadas tarefas, e que, ao final de sua execução não retornam nenhuma informação à aplicação que realizou a chamada. Podemos citar a classe PhoneCallTask como sendo um Launcher pois, passado os parâmetros necessários, ela irá realizar sua operação (ligar para um contato) e ao término, não irá enviar nenhum retorno para nossa aplicação chamadora ou seja, nossa aplicação apenas irá retornar para seu estado anterior – ativada.

Choosers

Assim como o Launcher, permitem que sejam executadas determinadas tarefas, mas que, ao final de sua execução retornam alguma informação para a aplicação que realizou a chamada. Como Chooser, um exemplo seria a classe CameraCaptureTask, isso porque após sua utilização, a mesma retorna para a aplicação cliente uma informação, que neste caso é uma foto.

Ao desenvolvermos aplicações, é comum utilizarmos o emulador do Windows Phone para realizarmos alguns testes correto? Pois bem, é importante entendermos quais são os Launchers e Choosers suportados pelo emulador e suas diferenças.

Nas classes abaixo, não há diferença entre Emulador e o Dispositivo:

EmailAddressChooserTask
- Permite acessar a lista de contatos, que possuem email cadastrado, retornando o email para a aplicação;

MarketplaceDetailTask
- Inicia o Marketplace e exibe a página de detalhes de uma determinada aplicação;

MarketplaceHubTask
- Inicia o Marketplace e permite o usuário selecionar o hub de Música + Vídeo ou de Aplicação;

MarketplaceSearchTask
- Permite a realização de pesquisa no Marketplace e exibe a página de resultados;

PhoneNumberChooserTask
- Permite acessar a lista de contatos, que possuem telefone cadastrado, retornando o número para a aplicação;

PhotoChooserTask
- Permite acessa a biblioteca de imagens, retornando a imagem selecionada;

SaveEmailAddressTask
- Permite acessa a lista de contatos. É possível salvar o email para um novo contato, ou um já existente;

SavePhoneNumberTask
- Permite acessa a lista de contatos. É possível salvar o número para um novo contato, ou um já existente;

SearchTask
- Permite que a aplicação inicie  o Web Search;

WebBrowserTask
- Permite que a aplicação inicie o navegador e navegue para uma URL específica.

Já nas classes abaixo, tem-se algumas diferenças:

CameraCaptureTask
- Windows Phone – Permite utilizar a câmera para obter uma nova foto e fornecê-la para a aplicação
- Emulador – Não existe câmera. Será retornada uma imagem padrão

EmailComposeTask
- Windows Phone – Permite que a aplicação inicie a criação de um novo email. Caso não existe conta de email cadastrada, será solicitada a configuração.
- Emulador – Não funciona pois não é possível configurar contas de email no emulador

MarketplaceReviewTask
- Windows Phone – Inicia o Marketplace e exibe a página de classificação e revisão de um determinado produto. É necessário um Windows Live ID para escrever uma revisão
- Emulador – Será retornado um erro pois não existe um Windows Live ID

MediaPlayerLaucher
- Windows Phone – Inicia o media player de acordo com a URI informada
- Emulador – É possível iniciar o media player e tocar músicas, porém vídeos não são renderizados

PhoneCallTask
- Windows Phone – Permite iniciar o mecanismo de chamadas, especificando o número a ser chamado. Caso o aparelho não possua um cartão SIM, será solicitada a adição do SIM e sairá da aplicação
- Emulador – O emulador utiliza um GSM falso e sempre retornará que não existe um cartão SIM inserido. No entanto as chamadas sempre são realizadas com sucesso por meio de uma conexão simulada

SmsComposeTask
- Windows Phone – Permite iniciar o mecanismo de mensagens, especificando o número do telefone e/ou a mensagem. Nenhum retorno é oferecido à aplicação. Caso o aparelho não possua um cartão SIM, o Windows Phone receberá uma notificação que o envio falhar
- Emulador – O emulador permite iniciar a mensagem SMS com o número do telefone e/ou a mensagem. A mensagem SMS sempre será “enviada” com sucesso devido ao falso SIM que o emulador possui.

That´s all folks!

Nos próximos posts irei demonstrar como utilizar nossos amigos Launchers and Choosers Ok!

Enjoy!


Sobre Luciano Lima

Luciano Lima escreveu 38 posts nesse blog.

Analista de Sistemas, trabalha com desenvolvimento e integração de sistemas a mais de 9 anos. Tem como hobby desenvolvimento de jogos utilizando Microsoft XNA Framework. Possui as certificações: MCP, MCAD, MCTS, MCPD Web, MCPD EAD. Pode ser contactado através do site http://www.lucianolima.com.br

Comment

  • Charles Fortes
    29 de maio de 2012 at 10:10

    Muito bom! Ansioso pelo próximo :)

Deixe um comentário

%d bloggers like this: