Я работаю с уведомлением о whit push. Когда пользователь нажимает на уведомление, я хочу запустить приложение, если оно не запущено, или принести его на передний план, если он запущен. Спасибокак начать применение или принести фронт, когда пользователь нажимает на уведомление, нажмите на android
ответ
Просто установите намерение для уведомления, это подробно описано в official API guide.
Вы делаете это, создавая PendingIntent
.
Например, при нажатии на уведомление будет запускаться MainActivity.
Intent intent = new Intent(this, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, 0);
Notification noti = new Notification.Builder(this)
.setContentTitle("Notication title")
.setContentText("Content text")
.setContentIntent(pendingIntent).build();
реализация pending intent
.
Код
Intent pi = new Intent();
pi.setClass(getApplicationContext(), youactivity.class);
// The PendingIntent to launch our activity if the user selects this notification
PendingIntent contentIntent = PendingIntent.getActivity(this, 0,pi, PendingIntent.FLAG_UPDATE_CURRENT);
String msgText = mMessage;
// construct the Notification object.
Notification notif = new Notification(R.drawable.icon, msgText,System.currentTimeMillis());
манифеста
<activity android:name="com.InfoActivity" android:noHistory="false android:excludeFromRecents="false"></activity>
Я не знаю, вы говорите о Google Cloud Messaging или нет. Но если это обычное уведомление, то при создании вашего уведомления вы должны предоставить ожидающее намерение. Просто поместите свой желаемый класс в ожидающее намерение, чтобы при нажатии пользователем на это уведомление вы попадаете в свое так называемое приложение. Отрывок:
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, new Intent(this,
"Your application activity".class), PendingIntent."Flag you want");
После этого используйте это намерение при создании уведомления. Это метод setContentIntent («выше намерения») и запускать уведомление с помощью NotificationManager!
необходимо добавить следующие флаги: aim.addFlags (Intent.FLAG_ACTIVITY_NEW_TASK); intent.setAction (Intent.ACTION_MAIN); intent.addCategory (Intent.CATEGORY_LAUNCHER); к цели запуска, чтобы начать приложение, и – user1796624
Напоминаю! :) – thegiga
это complite код, который я нашел ответ здесь Bring application to front after user clicks on home button
Intent intent = new Intent(ctx, SplashScreen.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
PendingIntent contentIntent = PendingIntent.getActivity(ctx, 0,
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT),
PendingIntent.FLAG_CANCEL_CURRENT);
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
ctx).setContentTitle(extras.getString("title"))
.setContentText(extras.getString("message"))
.setSmallIcon(R.drawable.ic_launcher)
.setContentIntent(contentIntent);
Notification noti = mBuilder.build();
noti.flags = Notification.DEFAULT_LIGHTS
| Notification.FLAG_AUTO_CANCEL;
mNotificationManager.notify(NOTIFICATION_ID, noti);
важные вещи являются флаги на Intent, это открыть приложение или вывести его на фронт, если открыт, или ничего не делать, если вы нажимаете на уведомление во время просмотра приложения.
- 1. Как начать работу, когда пользователь нажимает уведомление?
- 2. android Как начать работу, когда пользователь нажимает уведомление?
- 3. Необычное уведомление, когда пользователь нажимает на ссылку
- 4. Показывать приложение, когда пользователь нажимает на уведомление в Android
- 5. android: принести текущую деятельность на фронт через уведомление
- 6. Начать действие, когда нажимает уведомление
- 7. Titanium - выполнить действие, когда пользователь нажимает на Android-уведомление
- 8. Android: принести Вид на фронт диалогового
- 9. Как закрыть уведомление, когда пользователь нажимает на него
- 10. Как начать на текущей деятельности, когда пользователь нажимает кнопку Home
- 11. Как я могу начать работу, когда пользователь нажимает на ListItem?
- 12. Как открыть новую ссылку, когда пользователь нажимает на WebView Android
- 13. Обнаруживать, когда пользователь нажимает на NSTableView
- 14. Открытие страницы, когда пользователь нажимает на уведомление тоста
- 15. Открытая активность, когда пользователь нажимает на уведомление Parse.com
- 16. Android-уведомление нажимает на активность активности
- 17. Detect Когда пользователь нажимает на маркер «Заголовок»
- 18. Сила, чтобы принести Excel окно на фронт?
- 19. Titanium Android Notification выполняет действие, когда пользователь нажимает уведомление
- 20. принести легенду на фронт в gnuplot
- 21. Как определить, когда пользователь нажимает на просмотр в Android
- 22. всплывающее окно, когда пользователь нажимает на кнопку
- 23. Уведомление принести приложение на передний план без изменения активности
- 24. Как узнать, когда пользователь нажимает на любое приложение в android?
- 25. Как начать загрузку фотографии, когда пользователь нажимает кнопку отправки?
- 26. Увольнение события, когда пользователь нажимает на переключатель
- 27. открыть файл, когда пользователь нажимает на ссылку
- 28. Titanium с тем, как запускать некоторый код, когда пользователь нажимает на уведомление? (Android)
- 29. Как удалить уведомление из строки состояния, когда пользователь нажимает на него в android?
- 30. Как мне принести свое окно на фронт после события DDE?
извините, но это не работает, это делает новый экземпляр действием. – user1796624
Затем вы можете просто изменить PendingIntent.getActivity() на PendingIntent.getBroadcast() и сделать свой IntentReceiver получить это намерение и делать все, что захотите. – Mine