harmony 鸿蒙管理通知角标

  • 2023-06-24
  • 浏览 (1341)

管理通知角标

应用未读的通知,OpenHarmony提供了角标设置接口,将未读通知个数显示在桌面图标的右上角角标上。

通知增加时,角标上显示的未读通知个数需要增加。

通知被查看后,角标上显示的未读通知个数需要减少,没有未读通知时,不显示角标。

接口说明

  1. 通知服务提供了两种增加角标数的方法:

    • 发布通知时,在NotificationRequest的badgeNumber字段里携带,桌面收到通知后,在原角标数上累加、呈现。

    • 调用接口setBadgeNumber()设置,桌面按设置的角标数呈现。

  2. 角标数减少,目前仅支持通过setBadgeNumber()设置。

接口名 描述
setBadgeNumber(badgeNumber: number, callback: AsyncCallback<void>): void 设置角标个数

开发步骤

  1. 导入NotificationManager模块。
   import notificationManager from '@ohos.notificationManager';
   import Base from '@ohos.base';
  1. 增加角标个数。

发布通知在NotificationRequest的badgeNumber字段里携带,可参考通知发布章节。

示例为调用setBadgeNumber接口增加角标,在发布完新的通知后,调用该接口。

   function setBadgeNumberCallback(err:Base.BusinessError) {
     if (err) {
       console.error(`Failed to set badge number. Code is ${err.code}, message is ${err.message}`);
       return;
     }
     console.info(`Succeeded in seting badge number.`);
   }
   
   let badgeNumber = 10;
   notificationManager.setBadgeNumber(badgeNumber, setBadgeNumberCallback);
  1. 减少角标个数。

一条通知被查看后,应用需要调用接口设置剩下未读通知个数,桌面刷新角标。

   function setBadgeNumberCallback(err:Base.BusinessError) {
     if (err) {
       console.error(`Failed to set badge number. Code is ${err.code}, message is ${err.message}`);
       return;
     }
     console.info(`Succeeded in seting badge number.`);
   }
   
   let badgeNumber = 9;
   notificationManager.setBadgeNumber(badgeNumber, setBadgeNumberCallback);

你可能感兴趣的鸿蒙文章

harmony 鸿蒙通知

harmony 鸿蒙使能通知开关

harmony 鸿蒙通知概述

harmony 鸿蒙订阅通知(仅对系统应用开放)

harmony 鸿蒙为通知添加行为意图

harmony 鸿蒙发布进度条类型通知

harmony 鸿蒙发布基础类型通知

0  赞