//
Объект Runnable, который вызывает метод из потока GUI private
Runnable doUpdateGUI = new Runnable() { public void run() {
Context context = getApplicationContext(); String msg = "To open mobile development!"; int
duration = Toast.LENGTH_SHORT; Toast.makeText(context, msg,duration).show();
}
};
В листинге объект Handler используется
для гарантии того, чтоуведомление
Toast было вызвано в потоке GUI.
Вопросы:
1.
Перечислите варианты при разработке приложения под ОС
Android, в
которых использование уведомлений Toast оправдано.
2.
Можно ли сделать отображение Toast уведомления на базе собственной
разметки? Каким классом этообеспечивается?
3.
Каким параметром регулируется время
отображения уведомления
наэкране?
Лабораторная работа 7. Уведомления / pushnotification
Уведомление – это сообщение, которое выводится поверх любого от- крытого
приложения. Изначально часть уведомления появляется в отдельном контейнере
сверху экрана либо в виде ярлыка в области уведомлений.
Чтобы посмотреть
полную информацию об обновлении, пользователю необходимо открыть панель
уведомлений. Данные уведомления имеют больший
приоритет важности в
сравнении с всплывающими уведомлениями, поэтому будут зафиксированы в
панели
уведомлений до тех пор, пока пользователь не предпримет решения, что
делать с уведомлением.
Стилизация уведомления описывается в объекте NotificationCompat.Builder.
Чтобы создать уведомление, необходимо вызвать NotificationCompat.Builder.build(),
который вернет объект Notification, содержащий описанные нами спецификации.
Для отображения уведомления объект Notification
передается в систему путем
вызова метода NotificationManager.notify(), куда первым параметром необходимо
66
передать уникальный ID, вторым параметром – созданное уведомление.
Объект Notification должен содержать три элемента:
небольшая иконка, задается с помощью методаsetSmallIcon();
заголовок
уведомления, задается с помощью метода setContentTitle();
текст уведомления, задается с помощью методаsetContentText().
Создадим простое уведомление, которое имеет в качестве иконки иконку
приложения, особый текст и заголовок (рис. 7.1).
NotificationCompat.Builder mBuilder = (NotificationCompat.Builder)
new NotificationCompat.Builder(this)
.setSmallIcon(R.mipmap.
ic_launcher
)
.setContentTitle("Title notification")
.setContentText("Text
notification");
NotificationManager
mNotificationManager
=(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(NOTIFY_ID, mBuilder.build());
Рис. 7.1.
Отображение
простого
Push-уведомления на панели уведомлений
Достарыңызбен бөлісу: