首页 > 解决方案 > Ionic Cordova OneSignal + 华为 InAppAlert 问题

问题描述

我有一个现有的 Ionic Cordova 应用程序,我已将 inFocusDisplaying 设置为使用 OSInFocusDisplayOption.InAppAlert,它在 Android 和 IOS 中运行良好。但是,当我尝试为华为设备设置它时,InAppAlert 不起作用,它只显示通知横幅。

有谁知道 InAppAlert 是否也适用于华为设备?

使用以下设置/插件

Cordova v10.0.0
Cordova-Android v9.1.0
onesignal-cordova-plugin v2.11.4
@ionic-native/onesignal v5.33.1
@hmscore/ionic-native-hms-push v5.1.1-301
@hmscore/cordova-plugin-hms-push v5.1.1-301

初始化 OneSignal 的代码

this.oneSignal.startInit('myappid');
this.oneSignal.inFocusDisplaying(this.oneSignal.OSInFocusDisplayOption.InAppAlert);
this.oneSignal.handleNotificationOpened().subscribe('mycallback');
this.oneSignal.endInit();

标签: cordovaionic-frameworkonesignalhuawei-mobile-services

解决方案


根据 oneSignal文档,此接口已弃用。

块引用

所以作为替代,你可以使用新的setNotificationWillShowInForegroundHandler方法(但我不确定OneSignal是否支持HMS的这个功能)或者你可以直接使用华为推送套件,它也支持这个能力。

有关详细信息,请查看此文档


推荐阅读