Dieser Code erstellt eine Benachrichtigung. Wenn Sie darauf klicken, wird die aktuelle Anwendung läuft (die Absicht, in Entry
, geschaffen, der meine ist nur Activity
), eine leicht modifizierte Version eines Android Developers Blog:Android-Anrufmethode bei Benachrichtigung klicken
private void makeIntent() {
NotificationManager mgr = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification note = new Notification(R.drawable.prev, "Status message!", System.currentTimeMillis());
Intent intent = new Intent(this, Entry.class);
PendingIntent pi = PendingIntent.getActivity(this, 0, intent, 0);
note.setLatestEventInfo(this, "New Email", "Unread Conversation", pi);
note.flags |= Notification.FLAG_AUTO_CANCEL;
mgr.notify(NOTIFY_ME_ID, note);
}
Aber ich will nicht starten jede Aktivität, sondern lediglich eine Methode in der aktuellen Aktivität ausführen. Von dem, was ich bis jetzt gelesen habe, muss ich Methoden wie startActivityForResult()
verwenden, intent-filters
verwenden und onActivityResult()
implementieren, aber nachdem ich mit all diesen Dingen rumgespielt habe, Dinge in den Intent
und PendingIntent
ändern, habe ich immer noch kein brauchbares Ergebnis. Ist es möglich, nur eine Methode in Entry
anrufen (meine Haupt Activity
, in denen die Intent
erstellt wird), oder fangen alle ausgehenden oder eingehenden Intents
, wenn ich auf meine neu erstellte Notification
klicke?
PS. Ich entschuldige mich, wenn das ein doppelter Thread ist, SO ist im Moment ziemlich langsam, ich kann nicht richtig suchen.
Works, danke. – stealthjong
Beste Lösung Google gab mir, danke. –
Wie bereits erwähnt vergessen Sie nicht, android hinzuzufügen: launchMode = "singleTop" –