Task’s Windows Phone

Tempo de leitura: menos de 1 minuto

Olá pessoal, Primeiramente peço desculpas pois sumi daqui por uns tempos, estava tudo meio corrido aqui, mas agora espero que consiga estar ativamente por aqui mais uma vez. Bom, resolvi hoje criar esse artigo sobre Task’s do Windows Phone, pois são algumas coisas que podem nos ajudar e muito no desenvolvimento de nossos app’s Neste artigo, vou escrever sobre as Task’s para enviar e-mail’s, salvar contatos, enviar SMS, Tirar Fotos, e também utilizar o Search do Windows Phone.   Bem, vamos começar. Para começar, é necessário que você referencie em seu projeto o seguinte Namespace: using Microsoft.Phone.Tasks;   Não sei se é do conhecimento de todos, que quando a Microsoft desenvolveu o Windows Phone, ela colocou algumas restrições quanto a execução de algumas tarefas sem o consentimento do usuário, como por exemplo efetuar chamadas, enviar e-mail’s, enviar SMS, salvar um contato na agenda. Todas estas coisas, quando vamos fazer em nosso app, dependemos da autorização do usuário, e para realizar tais tarefas, utilizamos as Tasks do Windows Phone Vamos ver alguns deles neste artigo. O primeiro que irei abordar é o “EmailComposeTask”, que faz parte do Namespace “Microsoft.Phone.Tasks”, e é utilizada para compor e-mail’s. Com o “EmailComposeTask”, você pode montar um e-mail e o usuário escolherá por qual conta ele irá enviar o e-mail, se vai alterar o assunto, o conteúdo do e-mail, ou até mesmo o destinatário. Ou seja, você pode induzir o usuário a lhe enviar um e-mail, mais não quer dizer que necessariamente ele vai lhe enviar este e-mail, ou se o e-mail vai com o conteúdo que você definiu. A baixo segue uma instancia do “EmailComposeTask”: EmailComposeTask email = new EmailComposeTask(); //a propriedade “To” define o destinatario do e-mail email.To = “julio.arruda@outlook.com”; //A propriedade “Bcc” define a quem o e-mail será enviado como cópia oculta email.Bcc = “julio.arruda@outlook.com”; //A propriedade “Cc” define a quem o e-mail será enviado com cópia email.Cc = “julio.arruda@outlook.com”; //A propriedade “Subject” define o Assunto do e-mail email.Subject = “Sample SendMail”; //A propriedade “Body” define o corpo do e-mail email.Body = “E-mail de exemplo”; //O Evento “Show” abre o aplicativo de e-mail para enviar email.Show();   O Próximo item da lista é a criação de um contato na agenda, e da mesma maneira que enviar um e-mail, é necessária a confirmação do usuário, onde também o usuário pode alterar qualquer uma das informações cadastradas, complementar ou até mesmo não salvar nenhuma delas. O processo é todo muito simples, utilizamos o “SaveContactTask” para instanciar um novo contato, e seguimos os parâmetros abaixo: SaveContactTask contact = new SaveContactTask(); //A Propriedade “FirstName” define o primeiro nome contact.FirstName = “Julio”; //A propriedade “LastName” define o Ultimo nome contact.LastName = “Arruda”; //A propriedade “JobTitle” define a profissão contact.JobTitle = “Programador .NET”; //A propriedade “PersonalEmail” define o e-mail pessoal contact.PersonalEmail = “julio.arruda@outlook.com”; //A propriedade “MobilePhone” define o numero de celular contact.MobilePhone = “9999999999”; //pO evento “Show” exibe a tela para salvar o contato contact.Show(); Neste código, abordei apenas algumas das propriedades de um contato, existem mais vários campos a serem preenchidos que devem ser analizados quando a sua necessidade Segue um print de uma tela para salvar o contato do exemplo.   O próximo item, é como  escrever um SMS para ser enviado pelo usuário, mais lembrando que assim como os anteriores, o SMS não é enviado automaticamente, é necessária uma interação com o usuário, onde o mesmo pode alterar tudo, ou até mesmo não enviar. Faremos uso do: “SmsComposeTask” para instanciar uma nova SMS, e seguir os parâmetros conforme exemplo abaixo: SmsComposeTask sms = new SmsComposeTask(); //A propriedade “Body” define o conteudo do SMS sms.Body = “Teste de Envio de SMS “; //A propriedade “To” define para quem será enviado o SMS sms.To = “9999999999”; //O método “Show” exibe a tela de envio do SMS sms.Show(); Segue um print do SMS do exemplo: O próximo item que irei abordar é como realizar uma ligação, assim como os demais, é uma ação que depende do usuário para ser executada, nós enviamos uma solicitação para realizar a chamada, mas cabe ao usuário aceitar ou não. Para isso, utilizamos o “PhoneCallTask” para instanciar uma nova ligação, e preenchemos as propriedades como abaixo: PhoneCallTask call = new PhoneCallTask(); //A pripriedade “DisplayName” define o nome que será exibido no display enquanto a ligação estiver sendo realizada call.DisplayName = “Julio Arruda”; //A propriedade “PhoneNumber” define o numero a que defe ser realizada a ligação call.PhoneNumber = “88051287”; //O evento “Show” pergunta ao usuário se ele quer ou não realizar a ligação call.Show(); Segue print’s da ligação   Outra propriedade que temos de interessante, é a utilização da câmera do windows phone, para isso faremos o uso de: “CameraCaptureTask”, e devemos realizar o procedimento de acordo com o exemplo abaixo: private void button4_Click(object sender, RoutedEventArgs e) { //Instancia do CameraCaptureTask CameraCaptureTask  cameraCaptureTask = new CameraCaptureTask(); //Definição do Evento quando a foto for tirada cameraCaptureTask.Completed += new EventHandler<PhotoResult>(cameraCaptureTask_Completed); //Chama a Câmera cameraCaptureTask.Show(); }   //Evento que é executado quando a foto é tidada void cameraCaptureTask_Completed(object sender, PhotoResult e) { //Valido se a foto foi tirada if (e.TaskResult == TaskResult.OK) { //caso tenha sido tirada exibo um messagebox com o nome da foto MessageBox.Show(e.OriginalFileName);   } }   Segue um print com a mensagem do caminho da foto:   Outra coisa interessante de utilizar é o Search, onde podemos realizar buscas no aparelho e na internet de acordo com o parâmetro informado. Para isso utilizamos o: “SearchTask”, com os parametros informados abaixo: SearchTask search = new SearchTask(); //A propriedade “SearchQuery” define o parametro que deve ser buscado search.SearchQuery = “Julio Arruda”; //O evento “Show” exibe a tela ddo Search search.Show(); Seguem prints do search     Bom pessoal, é simples mais de momento é isso. Espero que tenha ajudado. Abaixo estou postando o aplicativo de exemplo.   Sample1.rar (68,55 kb)