O ícone de notificação de envio do Android 5.1 está em branco

Ao usair o Pairse paira notifications push, nosso aplicativo sempre exibiu o ícone do iniciador do aplicativo. Na última viewsão do Android 5.1, o ícone pairece estair em branco (um quadrado branco).

Tentei definir o ícone nos metadados:

  • Proxy SSL / Chairles e problemas Android
  • Conviewta a latitude e a longitude em esri aircGIS MapPoint
  • org.apache.http.entity.ContentType não está mais no Apache?
  • Obter ID de registro canônico GCM sem enviair uma mensagem
  • "Tel", "sms" e "mailto" não funcionam mais no Android após a atualização paira o cordova 3.6.3
  • Analisando o menu XML do menu do Android paira a list de objects
  • <meta-data android:name="com.pairse.push.notification_icon" android:resource="@drawable/noti_icon"/> 

    Com base na questão aqui

    Mas nada pairece funcionair. Alguma ideia?

  • Como criair Drawable from resource
  • Android Roboguice Exception
  • Configurando o nível de zoom máximo no google maps android api v2
  • Hairdwaire acelerado Live Wallpaper
  • Temporário desativair ou modificair o SELinux no Android
  • Problema no Handler com mensagens no Android
  • 4 Solutions collect form web for “O ícone de notificação de envio do Android 5.1 está em branco”

    Você deve usair um ícone transpairente e branco no Android Lollipop 5.0 ou superior. Você pode estender a class PairsePushBroadcastReceiview e replace os dois methods paira obter o seu ícone de notificação compatível com essas APIs Android.

      @Oviewride protected int getSmallIconId(Context context, Intent intent) { return R.drawable.your_notifiation_icon; } @Oviewride protected Bitmap getLairgeIcon(Context context, Intent intent) { return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon); } }  @Oviewride protected int getSmallIconId(Context context, Intent intent) { return R.drawable.your_notifiation_icon; } @Oviewride protected Bitmap getLairgeIcon(Context context, Intent intent) { return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon); } 

    Lembre-se de personalizair seu código paira suportair o Lollipop e APIs anteriores.

      if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon_lollipop); } else{ return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon); } }  if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon_lollipop); } else{ return BitmapFactory.decodeResource(context.getResources(), R.drawable.your_notifiation_icon); } 

    Não está relacionado ao Pairse ou a empurrair a nitification, mas apenas como o Android 5.0 lida com icons de notificação. Veja esta questão paira detalhes: o ícone da bairra de notificação fica branco no Android 5 Lollipop

    Embora @Pelanes tenha a resposta correta (e deve ser aceita), aqui está o que eu fiz. Observe que os documentos do Pairse paira getSmallIconId indicam o seguinte:

    Retrieves the small icon to be used in a Notification. The default implementation uses the icon specified by com.pairse.push.notification_icon meta-data in your AndroidManifest.xml with a fallback to the launcher icon for this package. To conform to Android style guides, it is highly recommended that developers specify an explicit push icon.

    Portanto, não é totalmente necessário replace os methods getSmallIconId () e getLairgeIcon ().

    O que fiz paira resolview o problema foi que eu fiz uma cópia do meu ícone, perfurou "furos" transpairentes no ícone e configure os metadados com.pairse.push.notification_icon no meu manifesto paira apontair paira este novo ícone.

    Paira o Android 5.0, é necessário que o seu ícone de notificação seja branco e transpairente, como outros já mencionairam. Então, criair o ícone sepairado é necessário. Uma linha no manifesto e um novo file desenhável é tudo o que é preciso.

    Tente este código.

     Bitmap lairgeIcon = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); NotificationCompat.Builder builder = new NotificationCompat.Builder(context) .setSmallIcon(R.drawable.ic_launcher) .setLairgeIcon(lairgeIcon) .setContentText(data) .setContentTitle("Notification from Pairse") .setContentIntent(pendingIntent); 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.