es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Error: El usuario debe ser válido y tener un nombre.

He configurado todo para que funcione con Firebase Messaging. Los mensajes en segundo plano funcionan bien. Pero para los mensajes en primer plano, me encuentro con el siguiente error: El usuario debe ser válido y tener un nombre.

W/System.err(15714): java.lang.RuntimeException: El usuario debe ser válido y tener un nombre.
W/System.err(15714):    at android.app.Notification$MessagingStyle.validate(Notification.java:7229)
W/System.err(15714):    at android.app.Notification$Builder.build(Notification.java:6088)
W/System.err(15714):    at androidx.core.app.NotificationCompatBuilder.buildInternal(NotificationCompatBuilder.java:410)
W/System.err(15714):    at androidx.core.app.NotificationCompatBuilder.build(NotificationCompatBuilder.java:324)
W/System.err(15714):    at androidx.core.app.NotificationCompat$Builder.build(NotificationCompat.java:2430)
W/System.err(15714):    at me.carda.awesome_notifications.notifications.NotificationBuilder.getNotificationBuilderFromModel(NotificationBuilder.java:425)
W/System.err(15714):    at me.carda.awesome_notifications.notifications.NotificationBuilder.createNotification(NotificationBuilder.java:110)
W/System.err(15714):    at me.carda.awesome_notifications.notifications.NotificationSender.showNotification(NotificationSender.java:209)
W/System.err(15714):    at me.carda.awesome_notifications.notifications.NotificationSender.doInBackground(NotificationSender.java:128)
W/System.err(15714):    at me.carda.awesome_notifications.notifications.NotificationSender.doInBackground(NotificationSender.java:34)
W/System.err(15714):    at android.os.AsyncTask$3.call(AsyncTask.java:394)
W/System.err(15714):    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
W/System.err(15714):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:305)
W/System.err(15714):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
W/System.err(15714):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
W/System.err(15714):    at java.lang.Thread.run(Thread.java:923)

Se lanza en una llamada como esta:

AwesomeNotifications().createNotification(
    content: NotificationContent(
        id: uniqueIdInt(),
        channelKey: 'basic_channel',
        title: notification!.title,
        body: notification.body,
        notificationLayout: NotificationLayout.Messaging,
    ),
);

¿Alguna pista?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El mensaje de error sugiere que el usuario asociado al mensaje en primer plano es inválido o no tiene un nombre. Esto podría significar que el nombre del usuario no se está pasando correctamente junto con el mensaje, o que el objeto de usuario en sí mismo es defectuoso.

    Para resolver el problema, intenta verificar el código que envía los mensajes en primer plano y asegúrate de que el nombre del usuario se esté estableciendo correctamente y se pase junto con el mensaje. Si el problema persiste, puede ser útil inspeccionar el objeto de usuario para asegurarse de que sea válido y tenga todos los campos necesarios, incluido un nombre.

    También puede ser útil verificar si el estilo de mensajería que se está utilizando es válido para los mensajes en primer plano, ya que el mensaje de error menciona específicamente Notification.MessagingStyle. Si no es así, considera el uso de un estilo de mensajería diferente que esté diseñado para notificaciones en primer plano.

Comments are closed.