Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Slon747
59 / 37 / 1
Регистрация: 24.08.2013
Сообщений: 415
#1

Notifications и открытие Activity по щелчку - Android

12.12.2014, 11:40. Просмотров 482. Ответов 5
Метки нет (Все метки)

Из сервиса запускается иконка Notifications.
Требуется, чтобы если программа свернута, то при щелчке по значку открывалась текущая на данный момент активити.
Как это реализовать?
Пока что у меня при щелчке по уведомлению оно вообще исчезает.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
        Intent notificationIntent = new Intent(MainActivity.context, service.class);
        PendingIntent contentIntent = PendingIntent.getActivity(MainActivity.context,
                0, notificationIntent,
                PendingIntent.FLAG_UPDATE_CURRENT);
 
        builder.setContentIntent(contentIntent)
                .setSmallIcon(icon)
                .setAutoCancel(true)
                .setContentText(sGeoStatus);
 
        Notification n = builder.getNotification();
 
        //с этим флагом иконка не пропадает после выхода из программы
        //n.flags |= Notification.DEFAULT_ALL;
 
        nm.notify(NOTIFY_ID, n);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2014, 11:40     Notifications и открытие Activity по щелчку
Посмотрите здесь:

Из одного Activity получить значение другого Activity Android
Android Как добраться до записей (notifications) в статус-баре
Из одной Activity запустить функцию другой Activity Android
Как вызвать Activity не из Activity? Android
Android Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity
Android Android - Передача данных с одного Activity на другое Activity
Изменение layout-элементов одного activity из другого activity Android
Push Notifications Parse Android
Android Android Push Notifications
Создание Activity в другом Activity Android
Android Вызвать из одной activity функцию другой activity
Number of sent notifications and services Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Gabberr
101 / 101 / 17
Регистрация: 13.10.2009
Сообщений: 402
12.12.2014, 11:49     Notifications и открытие Activity по щелчку #2
Создаёте интент с нужным действием
Java
1
    Intent nIntent = new Intent(context, YourActivity.class);
и суёте его в конструктор
Java
1
2
3
4
 
        PendingIntent contentIntent = PendingIntent.getActivity(context, 0,
                nIntent, PendingIntent.FLAG_UPDATE_CURRENT
                        | PendingIntent.FLAG_ONE_SHOT);
Slon747
59 / 37 / 1
Регистрация: 24.08.2013
Сообщений: 415
12.12.2014, 12:04  [ТС]     Notifications и открытие Activity по щелчку #3
В этом случае если активна MainActivity, то при щелчке значок исчезает.
Если же перед сворачиванием программы была активна другая активити, то при щелчке открывается всё равно MainActivity.
А как добиться того, чтобы открывалась последняя активити в стеке?
Gabberr
101 / 101 / 17
Регистрация: 13.10.2009
Сообщений: 402
12.12.2014, 12:29     Notifications и открытие Activity по щелчку #4
Если в момент клика на уведомление открыта та активити,которую вы хотите показать , у нее вызовется метод onNewIntent(Intent intent);
Если вы хотите, чтоб открывалась последняя активити, можно например при старте каждой активити писать в преференс переменную, означающую текущую активити, а при создании уведомления в зависимости от этой переменной вызывать нужную активити.
Slon747
59 / 37 / 1
Регистрация: 24.08.2013
Сообщений: 415
12.12.2014, 12:38  [ТС]     Notifications и открытие Activity по щелчку #5
Спасибо.
Вот только уведомление у меня создается один раз при старте программы.
В таком случае при старте каждой активити придется пересоздавать уведомление с нужным активити.
Хотя, можно открывать MainActivity, а при событии onNewIntent() открывать уже ту, что прописана в переменой?
Но так активити будут перемешаны в стеке.
Gabberr
101 / 101 / 17
Регистрация: 13.10.2009
Сообщений: 402
12.12.2014, 12:45     Notifications и открытие Activity по щелчку #6
Думаю лучший вариант - при старте новой активити слать колбек сервису, чтоб пересоздал уведомление, тут никаких проблем.
Yandex
Объявления
12.12.2014, 12:45     Notifications и открытие Activity по щелчку
Ответ Создать тему
Опции темы

Текущее время: 21:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru