适用于Xamarin的OneSignal SDK:HandleNotification收到未在华为设备上触发但HandleNotificationOpened

问题描述

我正在尝试将onesignal集成到使用Xamarin SDK开发的应用程序中。 使用android和ios设备,一切正常。

使用Hauwei设备时,我遇到的问题是没有调用“ HandleNotificationReceived”回调,而是调用了“ HandleNotificationopened”回调。无论如何,通知都会到达,因此建议您正确配置华为推包。

我也尝试扩展“ Com.Onesignal.Android.NotificationExtenderService”类,但是情况是相同的:在android上被称为,而在华为上则不是。

var chars = BookID.tochararray();
chars[0] = categoryCodes[4][0];
BookID = string.Concat(chars);

// or

BookID = categoryCodes[4][0] + BookID.Substring(1);

// or if you like interpolation 

BookID = $"{categoryCodes[4][0]}{BookID.Substring(1)}"

// or if you like C# 8 ranges

BookID = categoryCodes[4][0] + BookID[1..]

已安装的nuGet软件包为: Com.Onesignal 3.10.2和nventive.Com.Onesignal 3.2.13 我正在华为p40PRO EMUI 10.1.0 Andorid 10上测试该应用程序。

节电应用程序权限设置也应该很好。

那会是什么? 预先感谢

解决方法

根据OneSignal文档,您应该首先集成Huawei Xamarin SDK,然后将OneSignal添加到您在华为设备上的应用中。您还可以集成Xamarin Push Kit