Android: невозможно запустить активность из уведомления

1

У меня есть следующий код для отправки уведомления...

private void publishNotification(Intent intent, String header, String content){
        try {
            NotificationManager manager = getNotificationManager();
            Notification notification = new Notification(R.drawable.droid, header, System.currentTimeMillis());

            if(intent != null){
                PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, Intent.FLAG_ACTIVITY_NEW_TASK);
                notification.setLatestEventInfo(this, header, content, pendingIntent);
            }

            manager.notify(0, notification);

        } catch (Exception ex) {
            FileManager.writeToLogFile(this.getClass(), "publishNotification", LogMessageType.ERROR, ex.getMessage());
        }
    }

И следующий код, который вызывает его...

Intent intent = new Intent();
                intent.setAction(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);
                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                publishNotification(intent, "Default Password Changed", "Device configuration have changed.\nClick here to change this password.");

Моя проблема заключается в следующем...

Уведомление появляется в уведомлении и даже после его спуска. Проблема в том, что при нажатии этого уведомления активность не запускается. Я думаю, что я сделал все, что упоминалось в уроке. Что я делаю не так?

Теги:
notifications

2 ответа

4
Лучший ответ

Если вы хотите запустить мероприятие, вы должны использовать PendingIntent.getActivity() вместо PendingIntent.getService().

2
Intent intent = new Intent(context, class_name.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

а также использовать PendingIntent.getActivity() вместо PendingIntent.getService().

Ещё вопросы

Сообщество Overcoder
Наверх
Меню