DESENVOLVENDO PARA ANDROID: NOTIFICAÇÕES.

Opa galera, depois de tanto tempo, estou voltando para escrever um post rápido sobre android. Que são as notificações, lugares onde possam ser armazenados pequenas mensagens de aviso para o usuário.

Para criar uma nova notificação basta dar inicializar a classe Notification. Ela pode receber no construtor uma imagem, texto e o momento em que ela foi criada. Para mais informações consulte a documentação do Android.


Notification notification = new Notification(R.drawable.imagem, message, System.currentTimeMillis());

Ela deve conter a ação no qual ocorrerá quando ela for selecionada. Então ela deve conter uma Intent para saber o que fazer quando isso ocorrer. Um ponto pra ser reparado é o fato de colocar a flag Intent.FLAG_ACTIVITY_NEW_TASK na Intent. Assim ela iniciará uma nova Activity a sua escolha.


Intent notificationIntent = new Intent(ctx, Activity.class);

PendingIntent contentIntent = PendingIntent.getActivity(ctx, 0, notificationIntent, Intent.FLAG_ACTIVITY_NEW_TASK);

A seguir o exemplo completo:


Notification notification = new Notification(R.drawable.imagem, message, System.currentTimeMillis());

 

Intent notificationIntent = new Intent(ctx, Activity.class);

PendingIntent contentIntent = PendingIntent.getActivity(ctx, 0, notificationIntent, Intent.FLAG_ACTIVITY_NEW_TASK);

 

//Aqui adicionamos o efeito de vibrar ao adicionar a notificação. Lembrando que para isso, precisamos adicionar a permissão:

//<uses-permission android:name="android.permission.VIBRATE"></uses-permission> no AndroidManifest.xml

notification.defaults |= Notification.DEFAULT_VIBRATE;

long[] vibrate = {0,100,200,300};

notification.vibrate = vibrate;

&nbsp;

//Aqui estamos setando o título para a notificação e o texto que será exibido

notification.setLatestEventInfo(ctx, "Título", message, contentIntent);

&nbsp;

//Aqui estamos configurando o controle das notificações. Para isso você pega um serviço do sistema

NotificationManager manager = (NotificationManager) ctx.getSystemService(Context.NOTIFICATION_SERVICE);

//Então é só exibir a notificação pronta no sistema

manager.notify(idNoty, notification);

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.