Android-Benachrichtigung startet App, möchte aber wieder aufgenommen werden

Hallo, ich habe eine Benachrichtigung für meine Aktivität angezeigt, und wenn der Benutzer auf die Benachrichtigung klickt, wird die App neu gestartet. Allerdings möchte ich nur, dass es wieder auftaucht nicht neu starten. z.B. Es ist eine Web-App und ich möchte, dass es an die Front kommt, wenn der Benutzer die Benachrichtigung auswählt. Aber nicht die Webseite aktualisieren. Kann ich diese Absicht abfangen oder bin ich die falsche Absicht schicken? Normalerweise, wenn ich die Home-Taste drücke und auf das App-Icon klicke, kommt die App in den Vordergrund und wird nicht aktualisiert / neu gestartet. Also das ist das Verhalten, das ich will Irgendwelche Ideen ?

String ns = Context.NOTIFICATION_SERVICE; NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns); //2.Instantiate the Notification int icon = R.drawable.notification_icon; CharSequence tickerText = "My App"; // temp msg on status line long when = System.currentTimeMillis(); Notification notification = new Notification(icon, tickerText, when); notification.flags |= Notification.FLAG_ONGOING_EVENT; //3.Define the Notification's expanded message and Intent: Context context = getApplicationContext(); CharSequence contentTitle = "Notification"; CharSequence contentText = "My app!"; // message to user Intent notificationIntent = new Intent(this, HelloAndroid2.class); PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0); notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent); //4.Pass the Notification to the NotificationManager: final int NOTIFICATION_ICON_ID = 1; mNotificationManager.notify(NOTIFICATION_ICON_ID, notification); 

  • Obj Fragment falsch 2. Argument Typ gefunden 'Android.support.V4.app.Fragment.' Erforderlich 'Android.app.Fragment'
  • Können Sie eine gelöschte Module .iml-Datei im Android-Studio regenerieren
  • Locale.SPANISH wo ist es?
  • Pinch zoom in, zoom out - javascript / jquery / jquery mobile Veranstaltungen für Web auf Android-Plattform?
  • Überprüfen Sie, ob der broadcstreceiver registriert ist?
  • Game-Server für ein Android / iOS Turn-basierte Board-Spiel
  • JQuery - Autoshow Keyboard auf Mobile zulassen
  • Unterstützung ActionBar zeigt nicht die richtige Farbe mit API 21
  • Wie man HTTP-Anforderung mit http-Header sendet
  • Xlarge vs sw720dp Bildschirmgröße Verwirrung
  • "Kann nicht Anbieter com.google.firebase.provider.FirebaseInitProvider" Fehler Pfad Android
  • Facebook Like Button in Android Anwendung
  • 4 Solutions collect form web for “Android-Benachrichtigung startet App, möchte aber wieder aufgenommen werden”

    Ich stelle das in Manifest

     android:launchMode="singleInstance" 

    Das hat mir das Problem behoben. Auch diese Antwort, die ich nicht ausprobiert habe, die auf andere Dinge von Interesse hinweisen.

    Wenn Sie die Einstellung Ihrer Aktivität auf "singleInstance" vermeiden müssen, setzen Sie die Absicht der Benachrichtigung wie folgt:

     notificationIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 

    Sie können diese FLAG_ACTIVITY_REORDER_TO_FRONT ausprobieren (das Dokument beschreibt genau das, was Sie wollen)

    http://developer.android.com/reference/android/content/Intent.html#FLAG_ACTIVITY_REORDER_TO_FRONT

     Intent notificationIntent = new Intent(this, HelloAndroid2.class); notificationIntent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0); 

    Ich würde empfehlen, die Fahne Intent.FLAG_ACTIVITY_SINGLE_TOP für diese besondere Situation zu setzen, wenn Sie android verwenden: launchMode = "singleInstance" würde es das Verhalten beeinflussen, wenn Sie andere Absicht in Ihrer Anwendung aufrufen, zB mit facebook sdk, paypal sdk etc ..

    Die Erklärung ist einfach hier: Link

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.