Главная » Разработка для Android » Знакомство с Noti?cationManager

0

Класс NotificationManager — это системный Сервис, созданный для управления уведомлениями. Чтобы  получить  ссылку  на него, вызовите метод getSystemService, как показано в листинге 9.18.

Листинг 9.18. Использование NotificationManager

String svcName = Context.NOTIFICATION_SERVICE;

NotificationManager notificationManager;

notificationManager = (NotificationManager)getSystemService(svcName);

Используя NotificationManager, вы можете создавать новые уведомления, изменять уже существующие или удалять те, в которых больше нет нужды.

Создание уведомлений

Android  предоставляет несколько  способов доносить  информацию до пользователя с помощью уведомлений:

значок в статусной строке;

уведомление  в расширенной статусной строке;

дополнительные телефонные функции,  такие как звонок или вибра- ция.

В этом разделе  вы изучите  два первых способа, далее в этой главе вы узнаете, как улучшить уведомления с помощью различных свойств объекта Notification, чтобы активизировать светодиоды  устройства,  виброзвонок или проигрывание звукового файла.

Создание уведомления и настройка значка в статусной строке

Начните  с создания нового объекта Notification, передав ему в качестве параметров значок, который будет отображаться в статусной строке, текст сообщения  и время, когда уведомление  появится на экране, как показано в листинге 9.19.

Листинг 9.19. Создание уведомления

// Выберите графический объект, который будет отображаться в качестве

// значка в статусной строке int icon = R.drawable.icon;

// Текст, который будет виден в статусной строке в момент появления

// уведомления

String tickerText = "Notification";

// В расширенной статусной строке уведомления сортируются по времени

// появления

long when = System.currentTimeMillis();

Notification notification = new Notification(icon, tickerText, when);

Текст из переменной tickerText будет прокручиваться в статусной строке в момент появления уведомления.

Вы также можете задать для объекта Notification свойство number, чтобы отобразить количество событий на значке в статусной строке. Если это зна- чение больше 1, как показано в следующем фрагменте  кода, поверх значка выведется небольшое число:

notification.number++;

Чтобы  изменение  вступило  в силу, нужно  повторно  вызвать  объект Notification (это касается  любых изменений); чтобы убрать число, выво- димое поверх значка, установите значение в 0 или –1.

Источник: Майер P. Android 2 : программирование приложений для планшетных компьютеров и смартфонов : [пер. с англ. ] / Рето Майер. — М. : Эксмо, 2011. — 672 с. — (Мировой компьютерный бестселлер).

По теме:

  • Комментарии