Curso Windows Phone – Como agendar alarmes e lembretes através da APP

Olá pessoal, tudo bom?

Neste post, escrevo sobre como agendar alarmes e lembretes no Windows Phone através de uma APP que você esteja desenvolvendo. A técnica é bastante simples, pois podemos contar com classes praticamente prontas para esse fim, mas antes de iniciarmos a codificação, é importante entendermos qual a diferença entre ALARMES e LEMBRETES para o WP.

Alarmes (Alarm): Quando você agenda um alarme para o Windows Phone, isso significa dizer que você está planejando ser avisado sobre algum evento que você não pode esquecer ou deixar de fazer de jeito nenhum. Seu funcionamento é parecido ao de um despertador, ou seja, ficará emitindo avisos sonoros (o desenvolvedor pode escolher qual som irá tocar) ininterruptamente até que o dono do telefone tenha que interferir e então notar a mensagem de aviso que lhe está sendo passado.

alarm-wp

Lembretes (Reminder): Os lembretes são parecidos com os alarmes, mas o aviso sonoro ocorre apenas uma vez no momento em que o mesmo foi agendado, porém permite que o usuário reagende o lembre para um novo período de tempo e também lhe é dada a opção de tocar no lembrete e então ser redirecionado para uma determinada parte da APP que gerou o lembrete, por exemplo, caso você estivesse utilizando um leitor de RSS para ler alguma notícia e decidisse agendar a leitura de tal notícia para mais tarde, nesse caso, o desenvolvedor poderia preparar o lembrete para permitir que quando o mesmo fosse disparado pelo agendamento o usuário pudesse tocá-lo para ser direcionado diretamente para a porção da APP que permitiria a leitura da notícia agendada.

reminder-wp

Bem, agora que entendemos a diferença entre alarmes e lembretes, vamos verificar como codifica-los:

Implementando alarmes


private void btnAlarm_Click(object sender, RoutedEventArgs e)
{
  Alarm alarm = new Alarm("Alarm")
  {
    BeginTime = DateTime.Now.AddMinutes(1),
    Content = "Exemplo de Alarme !!!",
    RecurrenceType = RecurrenceInterval.None,
    Sound = new Uri("/Assets/AirHorn.mp3", UriKind.Relative)
  };
  ScheduledActionService.Add(alarm);
}

Implementando lembretes


private void btnReminder_Click(object sender, RoutedEventArgs e)
{
  var schedule = ScheduledActionService.Find("Lembrete");
  if (schedule == null)
  {
    Reminder reminder = new Reminder("Lembrete")
    {
      BeginTime = DateTime.Now.AddSeconds(30),
      Title = "Blog do Eduardo H. Rizo",
      Content = "Teste de Lembrete...",
      RecurrenceType = RecurrenceInterval.None,
      NavigationUri = new Uri("/ReminderPage.xaml?msg=Detalhes do Lembrete", UriKind.Relative)
    };
    ScheduledActionService.Add(reminder);
  }
  else
  {
    if (MessageBox.Show("O lembrete já está agendado. Deseja substituir?", "Aviso", MessageBoxButton.OKCancel) == MessageBoxResult.OK)
    {
      Reminder reminder = (Reminder)schedule;
      reminder.BeginTime = DateTime.Now.AddSeconds(30);
      reminder.Content = "Teste de Lembrete Alterado...";
      ScheduledActionService.Replace(reminder);
    }
  }
}

disketteDownload do exemplo

 

Grande abraço !
Eduardo Henrique Rizo

Post Relacionado: 

[twitter-follow screen_name=’eduardorizo’ show_count=’yes’]

3 comentários em “Curso Windows Phone – Como agendar alarmes e lembretes através da APP”

  1. Pingback: Free: Curso Windows Phone – Vários tópicos | Blog do Eduardo H. Rizo

  2. Pingback: [Desenvolvimento] Como agendar alarmes e lembretes através da APP - Windows Phone Brasil

  3. Pingback: Curso Windows Phone – Como consultar compromissos na agenda do Windows Phone | Blog do Eduardo H. Rizo

Deixe um comentário