2016-07-21 5 views
0

Я внедрил push-уведомление для приложения. Когда уведомление прослушивается, как запустить приложение из заставки, если приложение уже убито. Я хочу начать с экрана Splash, если приложение уже убито и начнется с экрана Inside Inside, если приложение уже находится в фоновом режиме. Как справиться с этим? Пожалуйста, помогите мне.Как управлять навигацией при нажатии на уведомление

ответ

1

Добавьте этот код в ваш метод создания уведомлений:

 Intent resultIntent = new Intent(this, SplashActivity.class); 
     resultIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT | Intent.FLAG_ACTIVITY_SINGLE_TOP); 
     resultIntent.setAction(Intent.ACTION_MAIN); 
     resultIntent.addCategory(Intent.CATEGORY_LAUNCHER); 
     PendingIntent resultPendingIntent = PendingIntent.getActivity(getApplicationContext(), 0, resultIntent, PendingIntent.FLAG_UPDATE_CURRENT); 
     mBuilder.setContentIntent(resultPendingIntent); 

Поиграйте с намерением флагов [resultIntent.addFlags(/*intent flag here*/)], если вы хотите:

старт с экрана выплеска, если приложение уже убит и начинается с Внутри экрана приземления, если приложение уже находится в фоновом режиме.

Надеюсь, это поможет!

+0

Благодарим вас за человека upvote! ценить это – mangu23

0

Используйте pendingIntent, чтобы указать действие, которое должно быть выполнено после выбора пользователем уведомления. Пример учебник Here

+0

Как определить, было ли приложение уже убито или запущено? – Aju

+0

ознакомьтесь с этим вопросом http://stackoverflow.com/questions/20500432/how-to-identify-app-when-it-goes-in-background-in-kitkat-4-4 – tk1505

Смежные вопросы