Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Slon747
59 / 37 / 2
Регистрация: 24.08.2013
Сообщений: 522
1

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

12.12.2014, 11:40. Просмотров 780. Ответов 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);
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2014, 11:40
Ответы с готовыми решениями:

Приложение зависает, если свернуть и развернуть Activity или перейти на другую Activity
У меня в параллельном потоке происходит куча apply() Решение использовать...

Android - Передача данных с одного Activity на другое Activity
Здравствуйте , возникла необходимость получения числовых (int и float ну или...

Изменение layout-элементов одного activity из другого activity
Здравствуйте! Я хочу изменить размер или цвет текста TextView в одном...

Как из одного Activity перенести фотку в другое Activity?
Собственно необходимо отобразить фотографию в activity2, которую загрузили в...

Вызвать из одной activity функцию другой activity
вызвать из одного activity функцию другой activity Подскажите, можно ли такое...

5
Gabberr
104 / 104 / 19
Регистрация: 13.10.2009
Сообщений: 404
12.12.2014, 11:49 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);
0
Slon747
59 / 37 / 2
Регистрация: 24.08.2013
Сообщений: 522
12.12.2014, 12:04  [ТС] 3
В этом случае если активна MainActivity, то при щелчке значок исчезает.
Если же перед сворачиванием программы была активна другая активити, то при щелчке открывается всё равно MainActivity.
А как добиться того, чтобы открывалась последняя активити в стеке?
0
Gabberr
104 / 104 / 19
Регистрация: 13.10.2009
Сообщений: 404
12.12.2014, 12:29 4
Если в момент клика на уведомление открыта та активити,которую вы хотите показать , у нее вызовется метод onNewIntent(Intent intent);
Если вы хотите, чтоб открывалась последняя активити, можно например при старте каждой активити писать в преференс переменную, означающую текущую активити, а при создании уведомления в зависимости от этой переменной вызывать нужную активити.
1
Slon747
59 / 37 / 2
Регистрация: 24.08.2013
Сообщений: 522
12.12.2014, 12:38  [ТС] 5
Спасибо.
Вот только уведомление у меня создается один раз при старте программы.
В таком случае при старте каждой активити придется пересоздавать уведомление с нужным активити.
Хотя, можно открывать MainActivity, а при событии onNewIntent() открывать уже ту, что прописана в переменой?
Но так активити будут перемешаны в стеке.
0
Gabberr
104 / 104 / 19
Регистрация: 13.10.2009
Сообщений: 404
12.12.2014, 12:45 6
Думаю лучший вариант - при старте новой активити слать колбек сервису, чтоб пересоздал уведомление, тут никаких проблем.
1
12.12.2014, 12:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.12.2014, 12:45

Как в Navigation Drawer Activity засунуть Activity?
Здравствуйте! у меня такая проблема navigation drawer activity работает только...

Из одного Activity получить значение другого Activity
Запускаю активити: public class MainActivity extends Activity { ... ......

Как добавить cardview в activity с другой activity?
У меня есть активность(1), куда нужно добавить cardview. в этой же активности...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru