Firebase Pu sh Уведомление не показывает значок в PWA (ReactJS) - PullRequest
0 голосов
/ 06 февраля 2020

Я создал приложение PWA с ReactJS. Я также внедрил Firebase Cloud Messaging для отображения уведомлений pu sh на устройствах.

Когда я устанавливаю PWA на свой телефон android, я получаю правильное уведомление pu sh.

Но я не могу найти способ отправить значок в свое уведомление.

Я запускаю уведомление с помощью ASP. NET Core WebApi (2.2), сделанного с помощью FirebaseAdmin SDK.

Мой манифест. json файл из PWA выглядит правильно. (192x192 & 512x512 png для значков) Я могу установить его, и он получает нужные значки приложений.

Мой код для запуска уведомления.

public async Task<ActionResult> Test()
{
    var message = new Message()
    {
        Notification = new Notification()
        {
            Title = "My Title",
            Body = "My Body",
            ImageUrl = "MY IMAGE URL"
        },
        Token = "MY ANDROID APP TOKEN"
    };

    await FirebaseMessaging.DefaultInstance.SendAsync(message);

    return Ok();
}

Я не могу найти способ добавьте иконку. (Теперь он по умолчанию серый с первой буквой моего приложения: E)

Также пробовал следующий код, но часть Android ничего не делает.

var message = new Message()
{
    Android = new AndroidConfig()
    {
        Notification = new AndroidNotification()
        {
            Title = "My Title",
            Body = "My Body",
            ImageUrl = "MY IMAGE",
            Icon = "MY ICON",
            ClickAction = "MY URL"
        }
    },
    Notification = new Notification()
    {
        Title = "My Title",
        Body = "My Body",
        ImageUrl = "MY IMAGE"
    },
    Token = "MY TOKEN"
};

await FirebaseMessaging.DefaultInstance.SendAsync(message);

Значок включен Android устройство. Изображение показывается при расширении уведомления. Icon on Android device

Если я использую API, предоставляемый Firebase:

https://fcm.googleapis.com/fcm/send

Я могу отправить значок уведомления, и это работает. Как я могу заставить это работать с FirebaseAdmin SDK?

1 Ответ

0 голосов
/ 06 февраля 2020

Я обнаружил проблему ...

Я использую неверный тип "Уведомления" в своем коде.

public async Task<ActionResult> Test()
{
    var message = new Message()
    {
        Webpush = new WebpushConfig()
        {
            Notification = new WebpushNotification()
            {
                Title = "My Title",
                Body = "My Body",
                Icon = "MY ICON"
            },
        },
        Token = "MY TOKEN"
    };

    await FirebaseMessaging.DefaultInstance.SendAsync(message);

    return Ok();
}

С WebpushConfig & WebpushNotification , я получаю именно то, что хочу.

...