Execute "onMessageReceived" on background

Abierto
#326 3 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@chong-shao ya está trabajando en esto.

Desde el 17/5/2022.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

api: messaging
[READ] Step 1: Are you in the right place?
  • I like to send a "data message" throw this nuget (no notification), so the "onMessageReceived" method was call on android in even in background.
  • Actually, I use HTTP legacy URI : https://fcm.googleapis.com/fcm/send and I'm able to send "data message" and "notification message"
  • I try to use "HTTP v1" instead, but I can't send "data message", I always receive a "notification message"
[REQUIRED] Step 2: Describe your environment
  • Operating System version: ubuntu 22.04
  • Firebase SDK version: 2.3.0
  • Firebase Product: messaging
  • .NET version: net6.0
  • OS: linux
[REQUIRED] Step 3: Describe the problem
Steps to reproduce:

Send a message with :

var message = new Message()
{
    Token = myToken,
    Notification = new Notification
    {
        Body = notification.Message.GetLanguage(device.DeviceLanguage),
        Title = notification.Title.GetLanguage(device.DeviceLanguage),
    },
    Android = new AndroidConfig
    {
        TimeToLive = TimeSpan.FromHours(1),
        Priority = Priority.High,
        Notification = new AndroidNotification
        {
            ChannelId = GetAndroidChannelId("alertChannel", soundName)
        }
    },
    Data = new Dictionary<string, string>() { }
};
var fcmResponse = await FirebaseMessaging.DefaultInstance.SendAsync(message);

I receive a "notification message" :)

var message = new Message()
{
    Token = myToken,
    Android = new AndroidConfig
    {
        TimeToLive = TimeSpan.FromHours(1),
        Priority = Priority.High,
        Notification = new AndroidNotification
        {
            ChannelId = GetAndroidChannelId("alertChannel", soundName)
        }
    },
    Data = new Dictionary<string, string>() { }
};
var fcmResponse = await FirebaseMessaging.DefaultInstance.SendAsync(message);

I receive a "notification message" not a "data message" :(

I aslo try to force the Notification property as null. But I had the same result

var message = new Message()
{
    Token = myToken,
    Notification = null,
...

There is something I can do ?

Lenguaje dominante
C#
Estrellas
407
Forks
147
Merge medio
2 d 10 h
PR fusionados (30 d)
12

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de firebase/firebase-admin-dotnet

Todos los issues de firebase/firebase-admin-dotnet

Issues similares

Más issues de C#

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.