Autore Topic: aprire activity al click su notifica  (Letto 427 volte)

Offline gabric

  • Utente senior
  • ****
  • Post: 615
  • Respect: +18
    • Google+
    • Mostra profilo
    • Brancato's site
  • Dispositivo Android:
    Nexus 5 / Tablet mediacom s4
  • Play Store ID:
    Brancato's+app
  • Sistema operativo:
    window7. ubuntu
aprire activity al click su notifica
« il: 03 Settembre 2013, 12:41:31 CEST »
0
Salve!
nella mia applicazione devo stampare delle notifiche, e al click aprire un activity passando i dati della notifica stessa

funziona tutto se la notifica è  solo 1, ma appena sono di più, le notifiche hanno titoli diversi, ma al click nell'intent vengono passati sempre i dati della prima notifica

ecco il metoto per chiamare la notifica

 
Codice (Java): [Seleziona]
public void sendNotification(String titolo, String testo, String imgUrl, int id) {

        NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this.getApplicationContext());

        // Titolo e testo della notifica
        notificationBuilder.setContentTitle(titolo);
        notificationBuilder.setContentText(testo);

        notificationBuilder.setTicker("Nuova offerta dall'Online app");

       
        notificationBuilder.setWhen(System.currentTimeMillis());

       
        notificationBuilder.setSmallIcon(R.drawable.ic_notifica);

        Intent notificationIntent = new Intent(this.getApplicationContext(), MostraNotifica.class); //eventualmente qui devo collegare le info per l'intent da stampare
        notificationIntent.putExtra("titolo", titolo);
        notificationIntent.putExtra("testo", testo);
        notificationIntent.putExtra("imgUrl", "http://www.ac-online.it/public/"+imgUrl);
        PendingIntent contentIntent = PendingIntent.getActivity(this.getApplicationContext(), 1,notificationIntent, 0);
   
        notificationBuilder.setContentIntent(contentIntent);


        // Impostiamo il suono, le luci e la vibrazione di default
        notificationBuilder.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_LIGHTS | Notification.DEFAULT_VIBRATE);
   
       
      mNotificationManager = (NotificationManager) this.getApplicationContext().getSystemService(this.getApplicationContext().NOTIFICATION_SERVICE);
      Notification notification = notificationBuilder.build();
      notification.flags = Notification.DEFAULT_LIGHTS | Notification.FLAG_AUTO_CANCEL;
      mNotificationManager.notify(id, notification);
     
     
     
}
 

Post unito: 03 Settembre 2013, 13:07:57 CEST
risolto modificando l'intent


Codice (Java): [Seleziona]
PendingIntent.getActivity(this.getApplicationContext(), (int)(Math.random() * 100), notificationIntent,PendingIntent.FLAG_UPDATE_CURRENT);
« Ultima modifica: 03 Settembre 2013, 13:07:58 CEST da gabric, Reason: Merged DoublePost »