У меня была проблема с уведомлением, не открывающимся/идущим к корректному действию, когда оно было нажато.
Мой код уведомления (расположенный в классе, который расширяет Сервис):
Context context = getApplicationContext();
CharSequence contentTitle = "Notification";
CharSequence contentText = "New Notification";
final Notification notifyDetails =
new Notification(R.drawable.icon, "Consider yourself notified", System.currentTimeMillis());
Intent notifyIntent = new Intent(context, MainActivity.class);
PendingIntent intent =
PendingIntent.getActivity(context, 0,
notifyIntent, PendingIntent.FLAG_UPDATE_CURRENT | Notification.FLAG_AUTO_CANCEL);
notifyDetails.setLatestEventInfo(context, contentTitle, contentText, intent);
((NotificationManager)getSystemService(NOTIFICATION_SERVICE)).notify(NOTIFICATION_ID, notifyDetails);
Если я нажимаю уведомление, в то время как приложение, которое создало сервис, открыто, уведомление исчезает (из-за FLAG_AUTO_CANCEL), но действие не переключается.
Если я нажимаю уведомление от главного экрана, уведомление исчезает, и мое приложение выявлено, однако это остается на действии, которое было открыто прежде, чем идти в главный экран, вместо того, чтобы идти в основной экран.
Что я делаю неправильно? Как я указываю действие, которое потянется?
Возможно, действительно ответил на свой вопрос:
Intent notifyIntent = new Intent(Intent.ACTION_MAIN);
notifyIntent.setClass(getApplicationContext(), Main.class);