with services remote notificaciones google fcm android google-cloud-messaging notificationmanager

remote - xamarin android google services json



El NotificationManager de Android me da un error de "ningún ícono pequeño válido" (3)

En realidad, no está configurando un icono para la notificación de inserción. Agregue .setSmallIcon(R.drawable.your_icon) a su notificación.

NotificationCompat.Builder notification = new NotificationCompat.Builder(this) .setContentTitle("New Password Request From " + (String) data.get("ip")) .setSmallIcon(R.drawable.your_icon) .addAction(acceptAction) .addAction(declineAction);

Estoy teniendo un error extraño con el administrador de notificaciones.

@Override public void onMessageReceived(String from, Bundle data) { Log.i(TAG, "IP : " + (String) data.get("ip")); NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); Intent acceptNextIntent = new Intent(MainActivity.BROADCAST_KEY_ACCEPT); // acceptNextIntent.putExtra("ip", (String) data.get("blah")); //add stuff here PendingIntent acceptNextPendingIntent = PendingIntent.getBroadcast(this, 0, acceptNextIntent, 0); Intent declineNextIntent = new Intent(MainActivity.BROADCAST_KEY_DECLINE); PendingIntent declineNextPendingIntent = PendingIntent.getBroadcast(this, 0, declineNextIntent, 0); NotificationCompat.Action acceptAction = new NotificationCompat.Action .Builder(R.drawable.common_signin_btn_icon_disabled_focus_light, "Grant Request", acceptNextPendingIntent).build(); NotificationCompat.Action declineAction = new NotificationCompat.Action .Builder(R.drawable.common_signin_btn_icon_focus_dark, "Decline Request", declineNextPendingIntent).build(); NotificationCompat.Builder notification = new NotificationCompat.Builder(this) .setContentTitle("New Password Request From " + (String) data.get("ip")) .addAction(acceptAction) .addAction(declineAction); notificationManager.notify(1, notification.build()); //ERROR HERE

Mensaje de error:

9.474 9327-9371/com.inh.amnesia_application I/MyGcmListenerService: IP : 128.239.213.39 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: Process: com.inh.amnesia_application, PID: 9327 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: java.lang.IllegalArgumentException: Invalid notification (no valid small icon): Notification(pri=0 contentView=com.inh.amnesia_application/0x1090085 vibrate=null sound=null defaults=0x0 flags=0x0 color=0x00000000 actions=2 vis=PRIVATE) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at android.app.NotificationManager.notify(NotificationManager.java:222) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at android.app.NotificationManager.notify(NotificationManager.java:194) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at com.inh.amnesia_application.MyGcmListenerService.onMessageReceived(MyGcmListenerService.java:65) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at com.google.android.gms.gcm.GcmListenerService.zzt(Unknown Source) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at com.google.android.gms.gcm.GcmListenerService.zzk(Unknown Source) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at com.google.android.gms.gcm.GcmListenerService.zza(Unknown Source) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at com.google.android.gms.gcm.GcmListenerService$1.run(Unknown Source) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 11-10 19:49:59.477 9327-9371/com.inh.amnesia_application E/AndroidRuntime: at java.lang.Thread.run(Thread.java:818)

¿Esto significa que los iconos a los que estoy tratando de acceder no existen? No estoy seguro de cómo interpretar este error y buscar este mensaje de error no produce nada.



Según el code NotificationManager de Android

if (mContext.getApplicationInfo().targetSdkVersion > Build.VERSION_CODES.LOLLIPOP_MR1) { if (notification.getSmallIcon() == null) { throw new IllegalArgumentException("Invalid notification (no valid small icon): " + notification); } }

Este error solo ocurrió cuando configuró la API de destino> LOLLIPOP_MR1 (22) y la notificación no tiene un icono pequeño.