Когда предмет назначается, гостю отправляется уведомление с вопросом, может ли он принести необходимый предмет. В зависимости от ввода пользователя, HTTP-запрос отправляется обратно на сервер, обновляя статус элемента (принесен/не принесен).
Я как бы застрял в ответе на нажатие кнопок действия уведомления, так как не совсем понял, как это работает. Мне удалось показать кнопки действий, но я не смог понять, как реагировать на их нажатие. Как я видел в Интернете, ответ на кнопки действия уведомления управляется PendingIntent, и мне не удалось понять, как он работает и как я могу использовать его для отправки HTTP-запросов в соответствии с нажатой кнопкой.
Я был бы рад некоторой помощи и совету.
[Это пример уведомления, отправленного пользователю.][
Это метод который уведомляет пользователя:
Код: Выделить всё
private void notifyUser(Bundle data) {
...
//Notification configuration.
NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
.setSmallIcon(...)
.setLargeIcon(...)
.setContentTitle(...)
.setContentText(...)
.setAutoCancel(...)
.setSound(...);
//Get the item data from the request sent to the GCM server.
Item item = GsonFactory.getGson()
.fromJson(data.getString("data"), Item.class);
//This is the part that I do not understand...
notificationBuilder
.addAction(R.drawable.ic_close_black, "No", null)
.addAction(R.drawable.ic_done_black, "Yes", null);
NotificationManager notificationManager =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(0, notificationBuilder.build());
}
Подробнее здесь: https://stackoverflow.com/questions/360 ... k-listener
Мобильная версия