6

La barra di notifica nella mia applicazione mostra solo la piccola icona nel ticker (come dovrebbe). Tuttavia, quando la "sfumatura" viene abbassata, mostra sia la piccola icona del ticker, sia un'icona grande che ho impostato in Notification.Builder. Ecco il mio codice:Barra di notifica mostra icone grandi e piccole

if (Build.VERSION.SDK_INT > 10){ 
      notification = new Notification(R.drawable.ic_stat_mintchip, 
        "This is a test", 
        System.currentTimeMillis()); 
      notification.largeIcon = (((BitmapDrawable)c.getResources().getDrawable(R.drawable.ic_launcher)).getBitmap()); 
      notification.defaults |= Notification.DEFAULT_ALL; 
      notification.number += 1; 
      notification.flags |= Notification.FLAG_AUTO_CANCEL; 

     } else { 
      notification = new Notification(R.drawable.ic_stat_mintchip, 
        "This is a test", 
        System.currentTimeMillis()); 

       notification.flags |= Notification.FLAG_AUTO_CANCEL; 
       notification.defaults |= Notification.DEFAULT_ALL; 
       notification.number += 1; 
     } 
} 

Non so perché questo sta accadendo. Qualche aiuto?

+1

Puoi pubblicare uno screenshot da qualche parte di ciò che si sta vedendo? – CommonsWare

+0

Certo, un secondo ... http://imgur.com/07lxg – D4N14L

+1

Suppongo che tu sia MintChip. Non sono del tutto sicuro del motivo per cui ottieni questo effetto. Che dispositivo è questo? Nota che mentre la tua domanda dice che stai usando 'Notification.Builder', il tuo codice non lo è. Potresti prendere in considerazione l'utilizzo di 'NotificationCompat.Builder' dal progetto di supporto Android e vedere se questo aiuta. – CommonsWare

risposta

11

Penso che il problema qui è che probabilmente non stai usando la classe Noteiton.Builder. Ecco un piccolo esempio di quello che si potrebbe fare (si dovrà inserire i propri variabili, però, e impostare le altre proprietà che si è utilizzato come una vibrazione):

Notification.Builder nb = new Notification.Builder(context) 
    .setContentTitle("title") 
    .setContentText("content") 
    .setAutoCancel(true) 
    .setLargeIcon(largeIcon) 
    .setSmallIcon(R.drawable.small_icon) 
    .setTicker(s.getText()); 
NotificationManager nm = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE); 
nm.notify(100, nb.build()); 
+0

Ha funzionato perfettamente :) – D4N14L

+1

Non riesco a compilare "nb.build()" in Android4.04, ma uso nb.getNotification(). – herbertD

+0

se uso un testo ticker, quale icona viene utilizzata per questo? e come posso personalizzarlo e usarne uno diverso e uno diverso per la notifica stessa? –

7

Un altro problema che avevo in lecca-lecca Android è che la accanto all'icona grande è stata visualizzata una piccola icona. Per risolverlo, non impostare l'icona grande! Usa solo le impostazioni per le icone piccole.

+1

Ma io voglio usare entrambi. Come posso farlo? – vedant1811

+0

Se si impostano entrambe le icone, appariranno entrambe. – ravyoli

+3

vedere http://stackoverflow.com/a/33943309/218473 su come nascondere la piccola icona – Maragues