Push notification 标签不工作的HMS取消通知((HMS推送套件)

Push notification 标签不工作的HMS取消通知((HMS推送套件),push-notification,huawei-mobile-services,Push Notification,Huawei Mobile Services,我正在将华为Push Kit()集成到颤振应用程序中 我测试在我的华为手机上安排每分钟通知一次,并且我能够按照预期获得通知。但是当我尝试使用clearNotification()函数(如下所示)取消通知时,通知似乎没有取消。我想知道我是否遗漏了什么 scheduleLocalNotification() async { try { Map<String, dynamic> localNotification = { HMSLocalNotifica

我正在将华为Push Kit()集成到颤振应用程序中

我测试在我的华为手机上安排每分钟通知一次,并且我能够按照预期获得通知。但是当我尝试使用clearNotification()函数(如下所示)取消通知时,通知似乎没有取消。我想知道我是否遗漏了什么

scheduleLocalNotification() async {
    try {
      Map<String, dynamic> localNotification = {
        HMSLocalNotificationAttr.TITLE: 'Notification Title',
        HMSLocalNotificationAttr.MESSAGE: 'Notification Message',
        HMSLocalNotificationAttr.TICKER: "OptionalTicker",
        HMSLocalNotificationAttr.TAG: "push-tag",
        HMSLocalNotificationAttr.BIG_TEXT: 'This is a bigText',
        HMSLocalNotificationAttr.SUB_TEXT: 'This is a subText',
        HMSLocalNotificationAttr.LARGE_ICON: 'ic_launcher',
        HMSLocalNotificationAttr.SMALL_ICON: 'ic_notification',
        HMSLocalNotificationAttr.COLOR: "white",
        HMSLocalNotificationAttr.VIBRATE: true,
        HMSLocalNotificationAttr.VIBRATE_DURATION: 1000.0,
        HMSLocalNotificationAttr.ONGOING: false,
        HMSLocalNotificationAttr.DONT_NOTIFY_IN_FOREGROUND: false,
        HMSLocalNotificationAttr.AUTO_CANCEL: false,
        HMSLocalNotificationAttr.INVOKE_APP: false,
        HMSLocalNotificationAttr.ACTIONS: ["Yes", "No"],
        HMSLocalNotificationAttr.REPEAT_TYPE: RepeatType.MINUTE,
        HMSLocalNotificationAttr.FIRE_DATE:
            DateTime.now().add(Duration(minutes: 1)).millisecondsSinceEpoch,
      };
      Map<String, dynamic> response =
          await Push.localNotificationSchedule(localNotification);
      print("Scheduled a local notification: " + response.toString());
    } catch (e) {
      print("Error: " + e.toString());
    }
  }  

clearNotification() async {
    Push.cancelNotificationsWithTag('push-tag');
  } 
scheduleLocalNotification()异步{
试一试{
映射本地通知={
HMSLocalNotificationAttr.TITLE:“通知标题”,
HMSLocalNotificationAttr.MESSAGE:'通知消息',
HMSLocalNotificationAttr.TICKER:“OptionalTicker”,
HMSLocalNotificationAttr.TAG:“推送标签”,
HMSLocalNotificationAttr.BIG_TEXT:“这是一个bigText”,
HMSLocalNotificationAttr.SUB_TEXT:“这是一个潜文本”,
HMSLocalNotificationAttr.LARGE_图标:“ic_启动器”,
HMSLocalNotificationAttr.SMALL_图标:“ic_通知”,
HMSLocalNotificationAttr.COLOR:“白色”,
HMSLocalNotificationAttr.VIBRATE:为真,
HMSLocalNotificationAttr.Vibration_持续时间:1000.0,
HMSLocalNotificationAttr.Continuousing:false,
HMSLocalNotificationAttr.DONT_NOTIFY_在前台:false,
HMSLocalNotificationAttr.AUTO_CANCEL:false,
HMSLocalNotificationAttr.INVOKE_APP:false,
HMSLocalNotificationAttr.ACTIONS:[“是”、“否”],
HMSLocalNotificationAttr.REPEAT\u类型:RepeatType.MINUTE,
HMSLocalNotificationAttr.FIRE_日期:
DateTime.now().add(持续时间(分钟:1)).millissecondssinceepoch,
};
映射响应=
等待Push.localNotificationSchedule(localNotification);
打印(“预定本地通知:+response.toString());
}捕获(e){
打印(“错误:+e.toString());
}
}  
clearNotification()异步{
Push.cancelNotificationsWithTag('Push-tag');
} 

目前,华为推送套件不支持clearNotification()功能。您可以使用发送下行链路消息API。有一个自动清除参数,您可以设置消息显示持续时间,以毫秒为单位。持续时间到期后,消息会自动删除。 请参阅以下代码:

{
    "validate_only": false,
    "message": {
        "android": {
            "notification":{"body":"Big Boom Body!","click_action":{"type":3},"title":"Big Boom Title","auto_clear": 360000}
            },
    "token":[
    "token1",
    "token2"]
    }
}

更多信息,请参见

目前,华为推送套件不支持clearNotification()功能。您可以使用发送下行消息API。有一个自动清除参数,您可以设置消息显示持续时间(毫秒)。持续时间到期后,消息将自动删除。 请参阅以下代码:

{
    "validate_only": false,
    "message": {
        "android": {
            "notification":{"body":"Big Boom Body!","click_action":{"type":3},"title":"Big Boom Title","auto_clear": 360000}
            },
    "token":[
    "token1",
    "token2"]
    }
}

有关更多信息,请参见调用
Push的clearNotification函数。cancelNotificationWithTag('Push-tag')
是异步的。 可能是
Push。cancelNotificationWithTag
之前可能会被调用。
直接调用而不是通过异步函数调用它,或者添加wait。

调用
Push的clearNotification函数。cancelNotificationWithTag('Push-tag')
是异步的。 可能是
Push。cancelNotificationWithTag
之前可能会被调用。 要么直接调用它,而不是通过异步函数调用,要么添加wait