Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Aula 05/06 (Notification)

515 views

Published on

Trabalhando com Notification (Android).

Published in: Technology, Economy & Finance
  • Be the first to comment

Aula 05/06 (Notification)

  1. 1. PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Notification
  2. 2. Objetivos da aula  Notification
  3. 3. Sua aplicação em segundo plano precisa interagir com o usuário. Qual a melhor maneira?
  4. 4. Toast?
  5. 5. Abrir uma tela sem permissão do usuário?
  6. 6. Esta barra de status é familiar?
  7. 7. Esta barra de status é familiar? Te lembra alguma coisa?
  8. 8. android.app.Notification
  9. 9. Não conhece esta barra de status?
  10. 10. Não conhece esta barra de status? Arraste-a para baixo...
  11. 11. Observe o exemplo abaixo...
  12. 12. Sua aplicação não pode atrapalhar a atividade atual do usuário, seja uma leitura de SMS, uma chamada ativa, jogando um game ou qualquer outra ação.
  13. 13. Com Notification podemos inclusive fazer o celular vibrar ou acender as luzes.
  14. 14. Uma Notification, quando clicada pode disparar uma Intent.
  15. 15. Se seu serviço precisar avisar algo ao usuário, lembre-se da classe Notification.
  16. 16. Activity que irá criar uma Notification...
  17. 17. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  18. 18. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  19. 19. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  20. 20. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  21. 21. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  22. 22. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  23. 23. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  24. 24. public class CriaNotificacao extends Activity { public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView textView = new TextView(this); textView.setText("Notificação criada..."); setContentView(textView); String tickerText = "Você recebeu uma mensagem"; String titulo = "Ricardo"; String mensagem = "Exemplo de notificação"; notificar(this, R.drawable.ic_launcher, tickerText, titulo, mensagem, ExecutaNotificacao.class); } void notificar(Context ctx, int img, String ticker, String titulo, String msg, Class<?> activity) { NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); PendingIntent p = PendingIntent.getActivity(ctx, 0, new Intent(ctx, activity), 0); // @formatter:off Notification n = new Notification.Builder(ctx) .setTicker(ticker) .setContentTitle(titulo) .setSmallIcon(img) .setContentText(msg) .setContentIntent(p) .setWhen(System.currentTimeMillis()) .build(); // @formatter:on nm.notify(R.string.app_name, n); } }
  25. 25. Activity que será executada através da Notification...
  26. 26. public class ExecutaNotificacao extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); nm.cancel(R.string.app_name); TextView textView = new TextView(this); textView.setText("Usuário selecionou a notificação."); setContentView(textView); } }
  27. 27. public class ExecutaNotificacao extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); nm.cancel(R.string.app_name); TextView textView = new TextView(this); textView.setText("Usuário selecionou a notificação."); setContentView(textView); } }
  28. 28. public class ExecutaNotificacao extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); nm.cancel(R.string.app_name); TextView textView = new TextView(this); textView.setText("Usuário selecionou a notificação."); setContentView(textView); } }
  29. 29. Até a próxima!

×