5

Ich erstelle wie Timer-Anwendung und wenn ich Timer starte, habe ich die Option, zu Android Home zu gehen oder eine andere Aktivität zu starten.Android-Benachrichtigungsleiste letzte aktive Aktivität öffnen?

Wenn ich den Timer starte, setze ich ein Benachrichtigungssymbol und wenn ich eine andere Anwendung verwende (ich gehe von der gestarteten Timer Aktivität) und jetzt muss ich zurück zu meiner zuvor gestarteten Timer Aktivität gehen, indem ich auf das Benachrichtigungssymbol klicke ?? ?

Wenn ich auf Ich starte eine neue Instanz-Timer-Aktivität, nicht die zuvor gestartete Timer-Aktivität! , und wenn ich dann auf Zurück-Taste klicke, zeige es mir eine vorhergehende Timer-Aktivität an.

Frage ist: Wie man zuvor gestartete Aktivität über die Benachrichtigungsleiste aufruft, um keine neue Instanz dieser Aktivität zu starten ??

Dies ist ein Beispiel meines Codes unter:

private void notificationBar() 
{ 
    String ns = Context.NOTIFICATION_SERVICE; 
    NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns); 
    int icon = R.drawable.ico; 
    CharSequence tickerText = "some title..."; 
    long when = System.currentTimeMillis(); 

    Notification notification = new Notification(icon, tickerText, when); 
    Context context = getApplicationContext(); 
    CharSequence contentTitle = "some app title"; 
    CharSequence contentText = "...some info !"; 
    Intent notificationIntent = new Intent(this, main.class); 
    PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, PendingIntent.FLAG_UPDATE_CURRENT | Notification.FLAG_AUTO_CANCEL); 

    notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent); 


    mNotificationManager.notify(NOTIF_ID, notification); 

}  
private void notificationClose(int notifID) 
{ 
    String ns = Context.NOTIFICATION_SERVICE; 
    NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns); 
    mNotificationManager.cancel(notifID); 

} 

Antwort

2

Ich bin nicht sicher, ich verstehe, was Sie meinen.

Ich nehme an, Sie könnten ein Extra in der Absicht hinzufügen, um anzugeben, welche Benachrichtigung genau verwendet wurde, um Ihre App aufzurufen. Hilft das überhaupt?

+1

Hallo, Manuel ich diesen Code haben, und es ist fast arbeiten, wie soll. Nur dass der Klick auf die Benachrichtigungsleiste die zuvor gestartete Aktivität nicht öffnet/anzeigt? Es öffnet eine neue Instanz dieser Aktivität? Ist es jetzt klar? Aktivitätstimer, Timer gestartet Ich erstelle Benachrichtigungssymbol, ich mache eine andere Anwendung und nach, während ich auf Benachrichtigungsleiste klicke und ich muss eine Timeraktivität öffnen, die Zeit tickt, keine neue Instanz von frischer Aktivität :) – Nezir

+2

In diesem Fall Überprüfen Sie das LaunchMode-Attribut für die Aktivität: http://developer.android.com/guide/topics/manifest/activity-element.html#lmode Ich denke, Sie möchten SingleTop verwenden. Hilft das? – Emmanuel

Verwandte Themen