@ohos.notification (Notification模块)


@ohos.notification (Notification模块)

本模块提供通知管理的能力,包括发布、取消发布通知,创建、获取、移除通知通道,订阅、取消订阅通知,获取通知的使能状态、角标使能状态,获取通知的相关信息等。

说明:

本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

通知订阅和取消订阅仅对系统应用开放。

导入模块

import Notification from '@ohos.notification';
1

Notification.publish

publish(request: NotificationRequest, callback: AsyncCallback<void>): void

发布通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
request NotificationRequest 用于设置要发布通知的内容和相关配置信息。
callback AsyncCallback<void> 发布通知的回调方法。

示例:

// publish回调
function publishCallback(err) {
    if (err.code) {
        console.info("publish failed " + JSON.stringify(err));
    } else {
        console.info("publish success");
    }
}
// 通知Request对象
var notificationRequest = {
    id: 1,
    content: {
        contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
        normal: {
            title: "test_title",
            text: "test_text",
            additionalText: "test_additionalText"
        }
    }
}
Notification.publish(notificationRequest, publishCallback)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

Notification.publish

publish(request: NotificationRequest): Promise<void>

发布通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
request NotificationRequest 用于设置要发布通知的内容和相关配置信息。

示例:

// 通知Request对象
var notificationRequest = {
    notificationId: 1,
    content: {
        contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
        normal: {
            title: "test_title",
            text: "test_text",
            additionalText: "test_additionalText"
        }
    }
}
Notification.publish(notificationRequest).then(() => {
	console.info("publish success");
});

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

Notification.publish8+

publish(request: NotificationRequest, userId: number, callback: AsyncCallback<void>): void

发布通知给指定的用户(callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
request NotificationRequest 用于设置要发布通知的内容和相关配置信息。
userId number 用户ID。
callback AsyncCallback<void> 被指定的回调方法。

示例:

// publish回调
function publishCallback(err) {
    if (err.code) {
        console.info("publish failed " + JSON.stringify(err));
    } else {
        console.info("publish success");
    }
}
// 用户ID
var userId = 1
// 通知Request对象
var notificationRequest = {
    id: 1,
    content: {
        contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
        normal: {
            title: "test_title",
            text: "test_text",
            additionalText: "test_additionalText"
        }
    }
}
Notification.publish(notificationRequest, userId, publishCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

Notification.publish8+

publish(request: NotificationRequest, userId: number): Promise<void>

发布通知给指定的用户(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
request NotificationRequest 用于设置要发布通知的内容和相关配置信息。
userId number 用户ID。

示例:

var notificationRequest = {
    notificationId: 1,
    content: {
        contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
        normal: {
            title: "test_title",
            text: "test_text",
            additionalText: "test_additionalText"
        }
    }
}

var userId = 1

Notification.publish(notificationRequest, userId).then(() => {
	console.info("publish success");
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

Notification.cancel

cancel(id: number, label: string, callback: AsyncCallback<void>): void

通过通知ID和通知标签取消已发布的通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
id number 通知ID。
label string 通知标签。
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

// cancel回调
function cancelCallback(err) {
    if (err.code) {
        console.info("cancel failed " + JSON.stringify(err));
    } else {
        console.info("cancel success");
    }
}
Notification.cancel(0, "label", cancelCallback)
1
2
3
4
5
6
7
8
9

Notification.cancel

cancel(id: number, label?: string): Promise<void>

取消与指定通知ID相匹配的已发布通知,label可以指定也可以不指定(Promise形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
id number 通知ID。
label string 通知标签。

示例:

Notification.cancel(0).then(() => {
	console.info("cancel success");
});
1
2
3

Notification.cancel

cancel(id: number, callback: AsyncCallback<void>): void

取消与指定通知ID相匹配的已发布通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
id number 通知ID。
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

// cancel回调
function cancelCallback(err) {
    if (err.code) {
        console.info("cancel failed " + JSON.stringify(err));
    } else {
        console.info("cancel success");
    }
}
Notification.cancel(0, cancelCallback)
1
2
3
4
5
6
7
8
9

Notification.cancelAll

cancelAll(callback: AsyncCallback<void>): void

取消所有已发布的通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

// cancel回调
function cancelAllCallback(err) {
    if (err.code) {
        console.info("cancelAll failed " + JSON.stringify(err));
    } else {
        console.info("cancelAll success");
    }
}
Notification.cancelAll(cancelAllCallback)
1
2
3
4
5
6
7
8
9

Notification.cancelAll

cancelAll(): Promise<void>

取消所有已发布的通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

示例:

Notification.cancelAll().then(() => {
	console.info("cancelAll success");
});
1
2
3

Notification.addSlot

addSlot(slot: NotificationSlot, callback: AsyncCallback<void>): void

创建通知通道(callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
slot NotificationSlot 要创建的通知通道对象。
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

// addslot回调
function addSlotCallBack(err) {
    if (err.code) {
        console.info("addSlot failed " + JSON.stringify(err));
    } else {
        console.info("addSlot success");
    }
}
// 通知slot对象
var notificationSlot = {
    type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.addSlot(notificationSlot, addSlotCallBack)
1
2
3
4
5
6
7
8
9
10
11
12
13

Notification.addSlot

addSlot(slot: NotificationSlot): Promise<void>

创建通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
slot NotificationSlot 要创建的通知通道对象。

示例:

// 通知slot对象
var notificationSlot = {
    type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.addSlot(notificationSlot).then(() => {
	console.info("addSlot success");
});
1
2
3
4
5
6
7

Notification.addSlot

addSlot(type: SlotType, callback: AsyncCallback<void>): void

创建指定类型的通知通道(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
type SlotType 要创建的通知通道的类型。
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

// addslot回调
function addSlotCallBack(err) {
    if (err.code) {
        console.info("addSlot failed " + JSON.stringify(err));
    } else {
        console.info("addSlot success");
    }
}
Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION, addSlotCallBack)
1
2
3
4
5
6
7
8
9

Notification.addSlot

addSlot(type: SlotType): Promise<void>

创建指定类型的通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
type SlotType 要创建的通知通道的类型。

示例:

Notification.addSlot(Notification.SlotType.SOCIAL_COMMUNICATION).then(() => {
	console.info("addSlot success");
});
1
2
3

Notification.addSlots

addSlots(slots: Array<NotificationSlot>, callback: AsyncCallback<void>): void

创建多个通知通道(callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
slots Array<NotificationSlot> 要创建的通知通道对象数组。
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

// addSlots回调
function addSlotsCallBack(err) {
    if (err.code) {
        console.info("addSlots failed " + JSON.stringify(err));
    } else {
        console.info("addSlots success");
    }
}
// 通知slot对象
var notificationSlot = {
    type: Notification.SlotType.SOCIAL_COMMUNICATION
}
// 通知slot array 对象
var notificationSlotArray = new Array();
notificationSlotArray[0] = notificationSlot;

Notification.addSlots(notificationSlotArray, addSlotsCallBack)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

Notification.addSlots

addSlots(slots: Array<NotificationSlot>): Promise<void>

创建多个通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
slots Array<NotificationSlot> 要创建的通知通道对象数组。

示例:

// 通知slot对象
var notificationSlot = {
    type: Notification.SlotType.SOCIAL_COMMUNICATION
}
// 通知slot array 对象
var notificationSlotArray = new Array();
notificationSlotArray[0] = notificationSlot;

Notification.addSlots(notificationSlotArray).then(() => {
	console.info("addSlots success");
});
1
2
3
4
5
6
7
8
9
10
11

Notification.getSlot

getSlot(slotType: SlotType, callback: AsyncCallback<NotificationSlot>): void

获取一个指定类型的通知通道(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
slotType SlotType 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型。
callback AsyncCallback<NotificationSlot> 表示被指定的回调方法。

示例:

// getSlot回调
function getSlotCallback(err, data) {
    if (err.code) {
        console.info("getSlot failed " + JSON.stringify(err));
    } else {
        console.info("getSlot success");
    }
}
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.getSlot(slotType, getSlotCallback)
1
2
3
4
5
6
7
8
9
10

Notification.getSlot

getSlot(slotType: SlotType): Promise<NotificationSlot>

获取一个指定类型的通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
slotType SlotType 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型。

返回值:

类型 说明
Promise<NotificationSlot> 以Promise形式返回获取一个通知通道。

示例:

var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.getSlot(slotType).then((data) => {
	console.info("getSlot success, data: " + JSON.stringify(data));
});
1
2
3
4

Notification.getSlots

getSlots(callback: AsyncCallback<Array<NotificationSlot>>): void

获取此应用程序的所有通知通道(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<NotificationSlot>> 以callback形式返回获取此应用程序的所有通知通道的结果。

示例:

// getSlots回调
function getSlotsCallback(err, data) {
    if (err.code) {
        console.info("getSlots failed " + JSON.stringify(err));
    } else {
        console.info("getSlots success");
    }
}
Notification.getSlots(getSlotsCallback)
1
2
3
4
5
6
7
8
9

Notification.getSlots

getSlots(): Promise<Array<NotificationSlot>>

获取此应用程序的所有通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

返回值:

类型 说明
Promise<Array<NotificationSlot>> 以Promise形式返回获取此应用程序的所有通知通道的结果。

示例:

Notification.getSlots().then((data) => {
	console.info("getSlots success, data: " + JSON.stringify(data));
});
1
2
3

Notification.removeSlot

removeSlot(slotType: SlotType, callback: AsyncCallback<void>): void

删除指定类型的通知通道(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
slotType SlotType 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型。
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

// removeSlot回调
function removeSlotCallback(err) {
    if (err.code) {
        console.info("removeSlot failed " + JSON.stringify(err));
    } else {
        console.info("removeSlot success");
    }
}
var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType,removeSlotCallback)
1
2
3
4
5
6
7
8
9
10

Notification.removeSlot

removeSlot(slotType: SlotType): Promise<void>

删除指定类型的通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
slotType SlotType 通知渠道类型,目前分为社交通信、服务提醒、内容咨询和其他类型。

示例:

var slotType = Notification.SlotType.SOCIAL_COMMUNICATION;
Notification.removeSlot(slotType).then(() => {
	console.info("removeSlot success");
});
1
2
3
4

Notification.removeAllSlots

removeAllSlots(callback: AsyncCallback<void>): void

删除所有通知通道(callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 表示被指定的回调方法。

示例:

function removeAllCallBack(err) {
    if (err.code) {
        console.info("removeAllSlots failed " + JSON.stringify(err));
    } else {
        console.info("removeAllSlots success");
    }
}
Notification.removeAllSlots(removeAllCallBack)
1
2
3
4
5
6
7
8

Notification.removeAllSlots

removeAllSlots(): Promise<void>

删除所有通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

示例:

Notification.removeAllSlots().then(() => {
	console.info("removeAllSlots success");
});
1
2
3

Notification.subscribe

subscribe(subscriber: NotificationSubscriber, info: NotificationSubscribeInfo, callback: AsyncCallback<void>): void

订阅通知并指定订阅信息(callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
subscriber NotificationSubscriber 通知订阅对象。
info NotificationSubscribeInfo 通知订阅信息。
callback AsyncCallback<void> 订阅动作回调函数。

示例:

// subscribe回调
function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribe success");
    }
}
function onConsumeCallback(data) {
	console.info("Consume callback: " + JSON.stringify(data));
}
var subscriber = {
    onConsume: onConsumeCallback
}
var info = {
    bundleNames: ["bundleName1", "bundleName2"]
}
Notification.subscribe(subscriber, info, subscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

Notification.subscribe

subscribe(subscriber: NotificationSubscriber, callback: AsyncCallback<void>): void

订阅当前用户下所有应用的通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
subscriber NotificationSubscriber 通知订阅对象。
callback AsyncCallback<void> 订阅动作回调函数。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribe success");
    }
}
function onConsumeCallback(data) {
	console.info("Consume callback: " + JSON.stringify(data));
}
var subscriber = {
    onConsume: onConsumeCallback
}
Notification.subscribe(subscriber, subscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Notification.subscribe

subscribe(subscriber: NotificationSubscriber, info?: NotificationSubscribeInfo): Promise<void>

订阅通知并指定订阅信息(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
subscriber NotificationSubscriber 通知订阅对象。
info NotificationSubscribeInfo 通知订阅信息。

示例:

function onConsumeCallback(data) {
    console.info("Consume callback: " + JSON.stringify(data));
}
var subscriber = {
    onConsume: onConsumeCallback
};
Notification.subscribe(subscriber).then(() => {
	console.info("subscribe success");
});
1
2
3
4
5
6
7
8
9

Notification.unsubscribe

unsubscribe(subscriber: NotificationSubscriber, callback: AsyncCallback<void>): void

取消订阅(callbcak形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
subscriber NotificationSubscriber 通知订阅对象。
callback AsyncCallback<void> 取消订阅动作回调函数。

示例:

function unsubscribeCallback(err) {
    if (err.code) {
        console.info("unsubscribe failed " + JSON.stringify(err));
    } else {
        console.info("unsubscribe success");
    }
}
function onDisconnectCallback(data) {
	console.info("Cancel callback: " + JSON.stringify(data));
}
var subscriber = {
    onDisconnect: onDisconnectCallback
}
Notification.unsubscribe(subscriber, unsubscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Notification.unsubscribe

unsubscribe(subscriber: NotificationSubscriber): Promise<void>

取消订阅(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
subscriber NotificationSubscriber 通知订阅对象。

示例:

function onDisconnectCallback(data) {
	console.info("Cancel callback: " + JSON.stringify(data));
}
var subscriber = {
    onDisconnect: onDisconnectCallback
};
Notification.unsubscribe(subscriber).then(() => {
	console.info("unsubscribe success");
});
1
2
3
4
5
6
7
8
9

Notification.enableNotification

enableNotification(bundle: BundleOption, enable: boolean, callback: AsyncCallback<void>): void

设定指定应用的通知使能状态(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
enable boolean 使能状态。
callback AsyncCallback<void> 设定通知使能回调函数。

示例:

function enableNotificationCallback(err) {
    if (err.code) {
        console.info("enableNotification failed " + JSON.stringify(err));
    } else {
        console.info("enableNotification success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
Notification.enableNotification(bundle, false, enableNotificationCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.enableNotification

enableNotification(bundle: BundleOption, enable: boolean): Promise<void>

设定指定应用的通知使能状态(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
enable boolean 使能状态。

示例:

var bundle = {
    bundle: "bundleName1",
}
Notification.enableNotification(bundle, false).then(() => {
	console.info("enableNotification success");
});
1
2
3
4
5
6

Notification.isNotificationEnabled

isNotificationEnabled(bundle: BundleOption, callback: AsyncCallback<boolean>): void

获取指定应用的通知使能状态(Callback形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
callback AsyncCallback<void> 获取通知使能状态回调函数。

示例:

function isNotificationEnabledCallback(err, data) {
    if (err.code) {
        console.info("isNotificationEnabled failed " + JSON.stringify(err));
    } else {
        console.info("isNotificationEnabled success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
Notification.isNotificationEnabled(bundle, isNotificationEnabledCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.isNotificationEnabled

isNotificationEnabled(bundle: BundleOption): Promise<boolean>

获取指定应用的通知使能状态(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回获取指定应用的通知使能状态的结果。

示例:

var bundle = {
    bundle: "bundleName1",
}
Notification.isNotificationEnabled(bundle).then((data) => {
	console.info("isNotificationEnabled success, data: " + JSON.stringify(data));
});
1
2
3
4
5
6

Notification.isNotificationEnabled

isNotificationEnabled(callback: AsyncCallback<boolean>): void

获取通知使能状态(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 获取通知使能状态回调函数。

示例:

function isNotificationEnabledCallback(err, data) {
    if (err.code) {
        console.info("isNotificationEnabled failed " + JSON.stringify(err));
    } else {
        console.info("isNotificationEnabled success");
    }
}

Notification.isNotificationEnabled(isNotificationEnabledCallback);
1
2
3
4
5
6
7
8
9

Notification.isNotificationEnabled

isNotificationEnabled(): Promise<boolean>

获取通知使能状态(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回获取通知使能状态的结果。

示例:

Notification.isNotificationEnabled().then((data) => {
	console.info("isNotificationEnabled success, data: " + JSON.stringify(data));
});
1
2
3

Notification.displayBadge

displayBadge(bundle: BundleOption, enable: boolean, callback: AsyncCallback<void>): void

设定指定应用的角标使能状态(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
enable boolean 使能状态。
callback AsyncCallback<void> 设定角标使能回调函数。

示例:

function displayBadgeCallback(err) {
    if (err.code) {
        console.info("displayBadge failed " + JSON.stringify(err));
    } else {
        console.info("displayBadge success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
Notification.displayBadge(bundle, false, displayBadgeCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.displayBadge

displayBadge(bundle: BundleOption, enable: boolean): Promise<void>

设定指定应用的角标使能状态(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
enable boolean 使能状态。

示例:

var bundle = {
    bundle: "bundleName1",
}
Notification.displayBadge(bundle, false).then(() => {
	console.info("displayBadge success");
});
1
2
3
4
5
6

Notification.isBadgeDisplayed

isBadgeDisplayed(bundle: BundleOption, callback: AsyncCallback<boolean>): void

获取指定应用的角标使能状态(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
callback AsyncCallback<void> 获取角标使能状态回调函数。

示例:

function isBadgeDisplayedCallback(err, data) {
    if (err.code) {
        console.info("isBadgeDisplayed failed " + JSON.stringify(err));
    } else {
        console.info("isBadgeDisplayed success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
Notification.isBadgeDisplayed(bundle, isBadgeDisplayedCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.isBadgeDisplayed

isBadgeDisplayed(bundle: BundleOption): Promise<boolean>

获取指定应用的角标使能状态(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回获取指定应用的角标使能状态。

示例:

var bundle = {
    bundle: "bundleName1",
}
Notification.isBadgeDisplayed(bundle).then((data) => {
	console.info("isBadgeDisplayed success, data: " + JSON.stringify(data));
});
1
2
3
4
5
6

Notification.setSlotByBundle

setSlotByBundle(bundle: BundleOption, slot: NotificationSlot, callback: AsyncCallback<void>): void

设定指定应用的通知通道(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
slot NotificationSlot 通知通道。
callback AsyncCallback<void> 设定通知通道回调函数。

示例:

function setSlotByBundleCallback(err) {
    if (err.code) {
        console.info("setSlotByBundle failed " + JSON.stringify(err));
    } else {
        console.info("setSlotByBundle success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
var notificationSlot = {
    type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.setSlotByBundle(bundle, notificationSlot, setSlotByBundleCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Notification.setSlotByBundle

setSlotByBundle(bundle: BundleOption, slot: NotificationSlot): Promise<void>

设定指定应用的通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
slot NotificationSlot 通知通道。

示例:

var bundle = {
    bundle: "bundleName1",
}
var notificationSlot = {
    type: Notification.SlotType.SOCIAL_COMMUNICATION
}
Notification.setSlotByBundle(bundle, notificationSlot).then(() => {
	console.info("setSlotByBundle success");
});
1
2
3
4
5
6
7
8
9

Notification.getSlotsByBundle

getSlotsByBundle(bundle: BundleOption, callback: AsyncCallback<Array<NotificationSlot>>): void

获取指定应用的所有通知通道(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
callback AsyncCallback<Array<NotificationSlot>> 获取通知通道回调函数。

示例:

function getSlotsByBundleCallback(err, data) {
    if (err.code) {
        console.info("getSlotsByBundle failed " + JSON.stringify(err));
    } else {
        console.info("getSlotsByBundle success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
Notification.getSlotsByBundle(bundle, getSlotsByBundleCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.getSlotsByBundle

getSlotsByBundle(bundle: BundleOption): Promise<Array<NotificationSlot>>

获取指定应用的所有通知通道(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。

返回值:

类型 说明
Promise<Array<NotificationSlot>> 以Promise形式返回获取指定应用的通知通道。

示例:

var bundle = {
    bundle: "bundleName1",
}
Notification.getSlotsByBundle(bundle).then((data) => {
	console.info("getSlotsByBundle success, data: " + JSON.stringify(data));
});
1
2
3
4
5
6

Notification.getSlotNumByBundle

getSlotNumByBundle(bundle: BundleOption, callback: AsyncCallback<number>): void

获取指定应用的通知通道数量(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
callback AsyncCallback<number> 获取通知通道数量回调函数。

示例:

function getSlotNumByBundleCallback(err, data) {
    if (err.code) {
        console.info("getSlotNumByBundle failed " + JSON.stringify(err));
    } else {
        console.info("getSlotNumByBundle success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
Notification.getSlotNumByBundle(bundle, getSlotNumByBundleCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.getSlotNumByBundle

getSlotNumByBundle(bundle: BundleOption): Promise<number>

获取指定应用的通知通道数量(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。

返回值:

类型 说明
Promise<number> 以Promise形式返回获取指定应用的通知通道数量。

示例:

var bundle = {
    bundle: "bundleName1",
}
Notification.getSlotNumByBundle(bundle).then((data) => {
	console.info("getSlotNumByBundle success, data: " + JSON.stringify(data));
});
1
2
3
4
5
6

Notification.remove

remove(bundle: BundleOption, notificationKey: NotificationKey, reason: RemoveReason, callback: AsyncCallback<void>): void

删除指定通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
notificationKey NotificationKey 通知键值。
reason RemoveReason 通知删除原因。
callback AsyncCallback<void> 删除指定通知回调函数。

示例:

function removeCallback(err) {
    if (err.code) {
        console.info("remove failed " + JSON.stringify(err));
    } else {
        console.info("remove success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
var notificationKey = {
    id: 0,
    label: "label",
}
var reason = Notification.RemoveReason.CLICK_REASON_REMOVE;
Notification.remove(bundle, notificationKey, reason, removeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

Notification.remove

remove(bundle: BundleOption, notificationKey: NotificationKey, reason: RemoveReason): Promise<void>

删除指定通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
notificationKey NotificationKey 通知键值。
reason RemoveReason 通知删除原因。

示例:

var bundle = {
    bundle: "bundleName1",
}
var notificationKey = {
    id: 0,
    label: "label",
}
var reason = Notification.RemoveReason.CLICK_REASON_REMOVE;
Notification.remove(bundle, notificationKey, reason).then(() => {
	console.info("remove success");
});
1
2
3
4
5
6
7
8
9
10
11

Notification.remove

remove(hashCode: string, reason: RemoveReason, callback: AsyncCallback<void>): void

删除指定通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
hashCode string 通知唯一ID。可以通过onConsume回调的入参SubscribeCallbackData获取其内部NotificationRequest对象中的hashCode。
reason RemoveReason 通知删除原因。
callback AsyncCallback<void> 删除指定通知回调函数。

示例:

var hashCode = 'hashCode'

function removeCallback(err) {
    if (err.code) {
        console.info("remove failed " + JSON.stringify(err));
    } else {
        console.info("remove success");
    }
}
var reason = Notification.RemoveReason.CANCEL_REASON_REMOVE;
Notification.remove(hashCode, reason, removeCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.remove

remove(hashCode: string, reason: RemoveReason): Promise<void>

删除指定通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
hashCode string 通知唯一ID。
reason RemoveReason 通知删除原因。

示例:

var hashCode = 'hashCode'
var reason = Notification.RemoveReason.CLICK_REASON_REMOVE;
Notification.remove(hashCode, reason).then(() => {
	console.info("remove success");
});
1
2
3
4
5

Notification.removeAll

removeAll(bundle: BundleOption, callback: AsyncCallback<void>): void

删除指定应用的所有通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。
callback AsyncCallback<void> 删除指定应用的所有通知回调函数。

示例:

function removeAllCallback(err) {
    if (err.code) {
        console.info("removeAll failed " + JSON.stringify(err));
    } else {
        console.info("removeAll success");
    }
}
var bundle = {
    bundle: "bundleName1",
}
Notification.removeAll(bundle, removeAllCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.removeAll

removeAll(callback: AsyncCallback<void>): void

删除所有通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 删除所有通知回调函数。

示例:

function removeAllCallback(err) {
    if (err.code) {
        console.info("removeAll failed " + JSON.stringify(err));
    } else {
        console.info("removeAll success");
    }
}

Notification.removeAll(removeAllCallback);
1
2
3
4
5
6
7
8
9

Notification.removeAll

removeAll(bundle?: BundleOption): Promise<void>

删除指定应用的所有通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 指定应用的包信息。

示例:

// 不指定应用时,删除所有通知
Notification.removeAll().then(() => {
	console.info("removeAll success");
});
1
2
3
4

Notification.removeAll8+

removeAll(userId: number, callback: AsyncCallback<void>): void

删除指定用户下的所有通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
userId number 用户ID。
callback AsyncCallback<void> 删除指定用户所有通知回调函数。

示例:

function removeAllCallback(err) {
    if (err.code) {
        console.info("removeAll failed " + JSON.stringify(err));
    } else {
        console.info("removeAll success");
    }
}

var userId = 1
Notification.removeAll(userId, removeAllCallback);
1
2
3
4
5
6
7
8
9
10

Notification.removeAll8+

removeAll(userId: number): Promise<void>

删除指定用户下的所有通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
userId number 用户ID。

示例:

var userId = 1
Notification.removeAll(userId).then(() => {
	console.info("removeAll success");
});
1
2
3
4

Notification.getAllActiveNotifications

getAllActiveNotifications(callback: AsyncCallback<Array<NotificationRequest>>): void

获取当前未删除的所有通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<NotificationRequest>> 获取活动通知回调函数。

示例:

function getAllActiveNotificationsCallback(err, data) {
    if (err.code) {
        console.info("getAllActiveNotifications failed " + JSON.stringify(err));
    } else {
        console.info("getAllActiveNotifications success");
    }
}

Notification.getAllActiveNotifications(getAllActiveNotificationsCallback);
1
2
3
4
5
6
7
8
9

Notification.getAllActiveNotifications

getAllActiveNotifications(): Promise<Array<NotificationRequest>>

获取当前未删除的所有通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

返回值:

类型 说明
Promise<Array<NotificationRequest>> 以Promise形式返回获取活动通知。

示例:

Notification.getAllActiveNotifications().then((data) => {
	console.info("getAllActiveNotifications success, data: " + JSON.stringify(data));
});
1
2
3

Notification.getActiveNotificationCount

getActiveNotificationCount(callback: AsyncCallback<number>): void

获取当前应用未删除的通知数(Callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
callback AsyncCallback<number> 获取未删除通知数回调函数。

示例:

function getActiveNotificationCountCallback(err, data) {
    if (err.code) {
        console.info("getActiveNotificationCount failed " + JSON.stringify(err));
    } else {
        console.info("getActiveNotificationCount success");
    }
}

Notification.getActiveNotificationCount(getActiveNotificationCountCallback);
1
2
3
4
5
6
7
8
9

Notification.getActiveNotificationCount

getActiveNotificationCount(): Promise<number>

获取当前应用未删除的通知数(Promise形式)。

系统能力:SystemCapability.Notification.Notification

返回值:

类型 说明
Promise<number> 以Promise形式返回获取当前应用未删除通知数。

示例:

Notification.getActiveNotificationCount().then((data) => {
	console.info("getActiveNotificationCount success, data: " + JSON.stringify(data));
});
1
2
3

Notification.getActiveNotifications

getActiveNotifications(callback: AsyncCallback<Array<NotificationRequest>>): void

获取当前应用未删除的通知列表(Callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
callback AsyncCallback<Array<NotificationRequest>> 获取当前应用通知列表回调函数。

示例:

function getActiveNotificationsCallback(err, data) {
    if (err.code) {
        console.info("getActiveNotifications failed " + JSON.stringify(err));
    } else {
        console.info("getActiveNotifications success");
    }
}

Notification.getActiveNotifications(getActiveNotificationsCallback);
1
2
3
4
5
6
7
8
9

Notification.getActiveNotifications

getActiveNotifications(): Promise<Array<NotificationRequest>>

获取当前应用未删除的通知列表(Promise形式)。

系统能力:SystemCapability.Notification.Notification

返回值:

类型 说明
Promise<Array<NotificationRequest>> 以Promise形式返回获取当前应用通知列表。

示例:

Notification.getActiveNotifications().then((data) => {
	console.info("removeGroupByBundle success, data: " + JSON.stringify(data));
});
1
2
3

Notification.cancelGroup8+

cancelGroup(groupName: string, callback: AsyncCallback<void>): void

取消本应用指定组下的通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
groupName string 通知组名称,此名称需要在发布通知时通过NotificationRequest对象指定。
callback AsyncCallback<void> 取消本应用指定组下通知的回调函数。

示例:

function cancelGroupCallback(err) {
    if (err.code) {
        console.info("cancelGroup failed " + JSON.stringify(err));
    } else {
        console.info("cancelGroup success");
    }
}

var groupName = "GroupName";

Notification.cancelGroup(groupName, cancelGroupCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.cancelGroup8+

cancelGroup(groupName: string): Promise<void>

取消本应用指定组下的通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
groupName string 通知组名称。

示例:

var groupName = "GroupName";
Notification.cancelGroup(groupName).then(() => {
	console.info("cancelGroup success");
});
1
2
3
4

Notification.removeGroupByBundle8+

removeGroupByBundle(bundle: BundleOption, groupName: string, callback: AsyncCallback<void>): void

删除指定应用的指定组下的通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包信息。
groupName string 通知组名称。
callback AsyncCallback<void> 删除指定应用指定组下通知的回调函数。

示例:

function removeGroupByBundleCallback(err) {
    if (err.code) {
        console.info("removeGroupByBundle failed " + JSON.stringify(err));
    } else {
        console.info("removeGroupByBundle success");
    }
}

var bundleOption = {bundle: "Bundle"};
var groupName = "GroupName";

Notification.removeGroupByBundle(bundleOption, groupName, removeGroupByBundleCallback);
1
2
3
4
5
6
7
8
9
10
11
12

Notification.removeGroupByBundle8+

removeGroupByBundle(bundle: BundleOption, groupName: string): Promise<void>

删除指定应用的指定组下的通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包信息。
groupName string 通知组名称。

示例:

var bundleOption = {bundle: "Bundle"};
var groupName = "GroupName";
Notification.removeGroupByBundle(bundleOption, groupName).then(() => {
	console.info("removeGroupByBundle success");
});
1
2
3
4
5

Notification.setDoNotDisturbDate8+

setDoNotDisturbDate(date: DoNotDisturbDate, callback: AsyncCallback<void>): void

设置免打扰时间(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
date DoNotDisturbDate 免打扰时间选项。
callback AsyncCallback<void> 设置免打扰时间回调函数。

示例:

function setDoNotDisturbDateCallback(err) {
    if (err.code) {
        console.info("setDoNotDisturbDate failed " + JSON.stringify(err));
    } else {
        console.info("setDoNotDisturbDate success");
    }
}

var doNotDisturbDate = {
    type: Notification.DoNotDisturbType.TYPE_ONCE,
    begin: new Date(),
    end: new Date(2021, 11, 15, 18, 0)
}

Notification.setDoNotDisturbDate(doNotDisturbDate, setDoNotDisturbDateCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Notification.setDoNotDisturbDate8+

setDoNotDisturbDate(date: DoNotDisturbDate): Promise<void>

设置免打扰时间(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
date DoNotDisturbDate 免打扰时间选项。

示例:

var doNotDisturbDate = {
    type: Notification.DoNotDisturbType.TYPE_ONCE,
    begin: new Date(),
    end: new Date(2021, 11, 15, 18, 0)
}
Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => {
	console.info("setDoNotDisturbDate success");
});
1
2
3
4
5
6
7
8

Notification.setDoNotDisturbDate8+

setDoNotDisturbDate(date: DoNotDisturbDate, userId: number, callback: AsyncCallback<void>): void

指定用户设置免打扰时间(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
date DoNotDisturbDate 免打扰时间选项。
userId number 设置免打扰时间的用户ID。
callback AsyncCallback<void> 设置免打扰时间回调函数。

示例:

function setDoNotDisturbDateCallback(err) {
    if (err.code) {
        console.info("setDoNotDisturbDate failed " + JSON.stringify(err));
    } else {
        console.info("setDoNotDisturbDate success");
    }
}

var doNotDisturbDate = {
    type: Notification.DoNotDisturbType.TYPE_ONCE,
    begin: new Date(),
    end: new Date(2021, 11, 15, 18, 0)
}

var userId = 1
Notification.setDoNotDisturbDate(doNotDisturbDate, userId, setDoNotDisturbDateCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

Notification.setDoNotDisturbDate8+

setDoNotDisturbDate(date: DoNotDisturbDate, userId: number): Promise<void>

指定用户设置免打扰时间(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
date DoNotDisturbDate 免打扰时间选项。
userId number 设置免打扰时间的用户ID。

示例:

var doNotDisturbDate = {
    type: Notification.DoNotDisturbType.TYPE_ONCE,
    begin: new Date(),
    end: new Date(2021, 11, 15, 18, 0)
}

var userId = 1

Notification.setDoNotDisturbDate(doNotDisturbDate, userId).then(() => {
	console.info("setDoNotDisturbDate success");
});
1
2
3
4
5
6
7
8
9
10
11

Notification.getDoNotDisturbDate8+

getDoNotDisturbDate(callback: AsyncCallback<DoNotDisturbDate>): void

查询免打扰时间(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<DoNotDisturbDate> 查询免打扰时间回调函数。

示例:

function getDoNotDisturbDateCallback(err, data) {
    if (err.code) {
        console.info("getDoNotDisturbDate failed " + JSON.stringify(err));
    } else {
        console.info("getDoNotDisturbDate success");
    }
}

Notification.getDoNotDisturbDate(getDoNotDisturbDateCallback);
1
2
3
4
5
6
7
8
9

Notification.getDoNotDisturbDate8+

getDoNotDisturbDate(): Promise<DoNotDisturbDate>

查询免打扰时间(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

返回值:

类型 说明
Promise<DoNotDisturbDate> 以Promise形式返回获取查询到的免打扰时间。

示例:

Notification.getDoNotDisturbDate().then((data) => {
	console.info("getDoNotDisturbDate success, data: " + JSON.stringify(data));
});
1
2
3

Notification.getDoNotDisturbDate8+

getDoNotDisturbDate(userId: number, callback: AsyncCallback<DoNotDisturbDate>): void

查询指定用户的免打扰时间(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<DoNotDisturbDate> 查询免打扰时间回调函数。
userId number 用户ID。

示例:

function getDoNotDisturbDateCallback(err,data) {
    if (err.code) {
        console.info("getDoNotDisturbDate failed " + JSON.stringify(err));
    } else {
        console.info("getDoNotDisturbDate success");
    }
}

var userId = 1

Notification.getDoNotDisturbDate(userId, getDoNotDisturbDateCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.getDoNotDisturbDate8+

getDoNotDisturbDate(userId: number): Promise<DoNotDisturbDate>

查询指定用户的免打扰时间(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
userId number 用户ID。

返回值:

类型 说明
Promise<DoNotDisturbDate> 以Promise形式返回获取查询到的免打扰时间。

示例:

var userId = 1

Notification.getDoNotDisturbDate(userId).then((data) => {
	console.info("getDoNotDisturbDate success, data: " + JSON.stringify(data));
});
1
2
3
4
5

Notification.supportDoNotDisturbMode8+

supportDoNotDisturbMode(callback: AsyncCallback<boolean>): void

查询是否支持免打扰功能(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<boolean> 查询是否支持免打扰功能回调函数。

示例:

function supportDoNotDisturbModeCallback(err,data) {
    if (err.code) {
        console.info("supportDoNotDisturbMode failed " + JSON.stringify(err));
    } else {
        console.info("supportDoNotDisturbMode success");
    }
}

Notification.supportDoNotDisturbMode(supportDoNotDisturbModeCallback);
1
2
3
4
5
6
7
8
9

Notification.supportDoNotDisturbMode8+

supportDoNotDisturbMode(): Promise<boolean>

查询是否支持免打扰功能(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回获取是否支持免打扰功能的结果。

示例:

Notification.supportDoNotDisturbMode().then((data) => {
	console.info("supportDoNotDisturbMode success, data: " + JSON.stringify(data));
});
1
2
3

Notification.isSupportTemplate8+

isSupportTemplate(templateName: string, callback: AsyncCallback<boolean>): void

查询模板是否存在(Callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
templateName string 模板名称。
callback AsyncCallback<boolean> 查询模板是否存在的回调函数。

示例:

var templateName = 'process';
function isSupportTemplateCallback(err, data) {
    if (err.code) {
        console.info("isSupportTemplate failed " + JSON.stringify(err));
    } else {
        console.info("isSupportTemplate success");
    }
}

Notification.isSupportTemplate(templateName, isSupportTemplateCallback);
1
2
3
4
5
6
7
8
9
10

Notification.isSupportTemplate8+

isSupportTemplate(templateName: string): Promise<boolean>

查询模板是否存在(Promise形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
templateName string 模板名称。

返回值:

类型 说明
Promise<boolean> Promise方式返回模板是否存在的结果。

示例:

var templateName = 'process';

Notification.isSupportTemplate(templateName).then((data) => {
    console.info("isSupportTemplate success, data: " + JSON.stringify(data));
});
1
2
3
4
5

Notification.requestEnableNotification8+

requestEnableNotification(callback: AsyncCallback<void>): void

应用请求通知使能(Callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
callback AsyncCallback<void> 应用请求通知使能的回调函数。

示例:

function requestEnableNotificationCallback(err) {
    if (err.code) {
        console.info("requestEnableNotification failed " + JSON.stringify(err));
    } else {
        console.info("requestEnableNotification success");
    }
};

Notification.requestEnableNotification(requestEnableNotificationCallback);
1
2
3
4
5
6
7
8
9

Notification.requestEnableNotification8+

requestEnableNotification(): Promise<void>

应用请求通知使能(Promise形式)。

系统能力:SystemCapability.Notification.Notification

示例:

Notification.requestEnableNotification().then(() => {
    console.info("requestEnableNotification success");
});
1
2
3

Notification.enableDistributed8+

enableDistributed(enable: boolean, callback: AsyncCallback<void>): void

设置设备是否支持分布式通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
enable boolean 是否支持。
callback AsyncCallback<void> 设置设备是否支持分布式通知的回调函数。

示例:

function enabledNotificationCallback(err) {
    if (err.code) {
        console.info("enableDistributed failed " + JSON.stringify(err));
    } else {
        console.info("enableDistributed success");
    }
};

var enable = true

Notification.enableDistributed(enable, enabledNotificationCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.enableDistributed8+

enableDistributed(enable: boolean): Promise<void>

设置设备是否支持分布式通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
enable boolean 是否支持。

示例:

var enable = true
Notification.enableDistributed(enable).then(() => {
    console.info("enableDistributed success");
});
1
2
3
4

Notification.isDistributedEnabled8+

isDistributedEnabled(callback: AsyncCallback<boolean>): void

查询设备是否支持分布式通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

参数:

参数名 类型 必填 说明
callback AsyncCallback<boolean> 设备是否支持分布式通知的回调函数。

示例:

function isDistributedEnabledCallback(err, data) {
    if (err.code) {
        console.info("isDistributedEnabled failed " + JSON.stringify(err));
    } else {
        console.info("isDistributedEnabled success " + JSON.stringify(data));
    }
};

Notification.isDistributedEnabled(isDistributedEnabledCallback);
1
2
3
4
5
6
7
8
9

Notification.isDistributedEnabled8+

isDistributedEnabled(): Promise<boolean>

查询设备是否支持分布式通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

返回值:

类型 说明
Promise<boolean> Promise方式返回设备是否支持分布式通知的结果。

示例:

Notification.isDistributedEnabled().then((data) => {
    console.info("isDistributedEnabled success, data: " + JSON.stringify(data));
});
1
2
3

Notification.enableDistributedByBundle8+

enableDistributedByBundle(bundle: BundleOption, enable: boolean, callback: AsyncCallback<void>): void

设置指定应用是否支持分布式通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包信息。
enable boolean 是否支持。
callback AsyncCallback<void> 应用程序是否支持分布式通知的回调函数。

示例:

function enableDistributedByBundleCallback(err) {
    if (err.code) {
        console.info("enableDistributedByBundle failed " + JSON.stringify(err));
    } else {
        console.info("enableDistributedByBundle success");
    }
};

var bundle = {
    bundle: "bundleName1",
}

var enable = true

Notification.enableDistributedByBundle(bundle, enable, enableDistributedByBundleCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

Notification.enableDistributedByBundle8+

enableDistributedByBundle(bundle: BundleOption, enable: boolean): Promise<void>

设置指定应用是否支持分布式通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包。
enable boolean 是否支持。

示例:

var bundle = {
    bundle: "bundleName1",
}

var enable = true
Notification.enableDistributedByBundle(bundle, enable).then(() => {
    console.info("enableDistributedByBundle success");
});
1
2
3
4
5
6
7
8

Notification.isDistributedEnabledByBundle8+

isDistributedEnabledByBundle(bundle: BundleOption, callback: AsyncCallback<boolean>): void

根据应用的包获取应用程序是否支持分布式通知(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包。
callback AsyncCallback<boolean> 查询指定应用是否支持分布式通知的回调函数。

示例:

function isDistributedEnabledByBundleCallback(err, data) {
    if (err.code) {
        console.info("isDistributedEnabledByBundle failed " + JSON.stringify(err));
    } else {
        console.info("isDistributedEnabledByBundle success" + JSON.stringify(data));
    }
};

var bundle = {
    bundle: "bundleName1",
}

Notification.isDistributedEnabledByBundle(bundle, isDistributedEnabledByBundleCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13

Notification.isDistributedEnabledByBundle8+

isDistributedEnabledByBundle(bundle: BundleOption): Promise<boolean>

查询指定应用是否支持分布式通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包。

返回值:

类型 说明
Promise<boolean> Promise方式返回指定应用是否支持分布式通知的结果。

示例:

var bundle = {
    bundle: "bundleName1",
}

Notification.isDistributedEnabledByBundle(bundle).then((data) => {
    console.info("isDistributedEnabledByBundle success, data: " + JSON.stringify(data));
});
1
2
3
4
5
6
7

Notification.getDeviceRemindType8+

getDeviceRemindType(callback: AsyncCallback<DeviceRemindType>): void

获取通知的提醒方式(Callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<DeviceRemindType> 获取通知提醒方式的回调函数。

示例:

function getDeviceRemindTypeCallback(err,data) {
    if (err.code) {
        console.info("getDeviceRemindType failed " + JSON.stringify(err));
    } else {
        console.info("getDeviceRemindType success");
    }
};

Notification.getDeviceRemindType(getDeviceRemindTypeCallback);
1
2
3
4
5
6
7
8
9

Notification.getDeviceRemindType8+

getDeviceRemindType(): Promise<DeviceRemindType>

获取通知的提醒方式(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

返回值:

类型 说明
Promise<DeviceRemindType> Promise方式返回获取通知提醒方式的结果。

示例:

Notification.getDeviceRemindType().then((data) => {
    console.info("getDeviceRemindType success, data: " + JSON.stringify(data));
});
1
2
3

Notification.publishAsBundle9+

publishAsBundle(request: NotificationRequest, representativeBundle: string, userId: number, callback: AsyncCallback<void>): void

发布代理通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
request NotificationRequest 用于设置要发布通知的内容和相关配置信息。
representativeBundle string 被代理应用的包名。
userId number 用户ID。
callback AsyncCallback 发布代理通知的回调方法。

示例:

// publishAsBundle回调
function callback(err) {
    if (err.code) {
        console.info("publishAsBundle failed " + JSON.stringify(err));
    } else {
        console.info("publishAsBundle success");
    }
}
// 被代理应用的包名
let representativeBundle = "com.example.demo"
// 用户ID
let userId = 100
// NotificationRequest对象
let request = {
    id: 1,
    content: {
        contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
        normal: {
            title: "test_title",
            text: "test_text",
            additionalText: "test_additionalText"
        }
    }
}

Notification.publishAsBundle(request, representativeBundle, userId, callback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

Notification.publishAsBundle9+

publishAsBundle(request: NotificationRequest, representativeBundle: string, userId: number): Promise<void>

发布代理通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

需要权限: ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
request NotificationRequest 用于设置要发布通知的内容和相关配置信息。
representativeBundle string 被代理应用的包名。
userId number 用户ID。

示例:

// 被代理应用的包名
let representativeBundle = "com.example.demo"
// 用户ID
let userId = 100
// NotificationRequest对象
var request = {
    id: 1,
    content: {
        contentType: Notification.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,
        normal: {
            title: "test_title",
            text: "test_text",
            additionalText: "test_additionalText"
        }
    }
}

Notification.publishAsBundle(request, representativeBundle, userId).then(() => {
	console.info("publishAsBundle success");
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20

Notification.cancelAsBundle9+

cancelAsBundle(id: number, representativeBundle: string, userId: number, callback: AsyncCallback<void>): void

取消代理通知(callback形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限: ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
id number 通知ID。
representativeBundle string 被代理应用的包名。
userId number 用户ID。
callback AsyncCallback 取消代理通知的回调方法。

示例:

// cancelAsBundle
function cancelAsBundleCallback(err) {
    if (err.code) {
        console.info("cancelAsBundle failed " + JSON.stringify(err));
    } else {
        console.info("cancelAsBundle success");
    }
}
// 被代理应用的包名
let representativeBundle = "com.example.demo"
// 用户ID
let userId = 100

Notification.cancelAsBundle(0, representativeBundle, userId, cancelAsBundleCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Notification.cancelAsBundle9+

cancelAsBundle(id: number, representativeBundle: string, userId: number): Promise<void>

取消代理通知(Promise形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限: ohos.permission.NOTIFICATION_CONTROLLER,ohos.permission.NOTIFICATION_AGENT_CONTROLLER

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
id number 通知ID。
representativeBundle string 被代理应用的包名。
userId number 用户ID。

示例:

// 被代理应用的包名
let representativeBundle = "com.example.demo"
// 用户ID
let userId = 100

Notification.cancelAsBundle(0, representativeBundle, userId).then(() => {
	console.info("cancelAsBundle success");
});
1
2
3
4
5
6
7
8

Notification.enableNotificationSlot 9+

enableNotificationSlot(bundle: BundleOption, type: SlotType, enable: boolean, callback: AsyncCallback<void>): void

设置指定应用的指定渠道类型的使能状态(Callback形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包信息。
type SlotType 指定渠道类型。
enable boolean 使能状态。
callback AsyncCallback<void> 设置渠道使能回调函数。

示例:

// enableNotificationSlot
function enableSlotCallback(err) {
    if (err.code) {
        console.info("enableNotificationSlot failed " + JSON.stringify(err));
    } else {
        console.info("enableNotificationSlot success");
    }
};

Notification.enableNotificationSlot(
    { bundle: "ohos.samples.notification", },
    Notification.SlotType.SOCIAL_COMMUNICATION,
    true,
    enableSlotCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14

Notification.enableNotificationSlot 9+

enableNotificationSlot(bundle: BundleOption, type: SlotType, enable: boolean): Promise<void>

设置指定应用的指定渠道类型的使能状态(Promise形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包信息。
type SlotType 渠道类型。
enable boolean 使能状态。

示例:

// enableNotificationSlot
Notification.enableNotificationSlot({ bundle: "ohos.samples.notification", },
    Notification.SlotType.SOCIAL_COMMUNICATION,true).then(() => {
    console.info("enableNotificationSlot success");
});
1
2
3
4
5

Notification.isNotificationSlotEnabled 9+

isNotificationSlotEnabled(bundle: BundleOption, type: SlotType, callback: AsyncCallback<boolean>): void

获取指定应用的指定渠道类型的使能状态(Callback形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包信息。
type SlotType 渠道类型。
callback AsyncCallback<boolean> 获取渠道使能状态回调函数。

示例:

// isNotificationSlotEnabled
function getEnableSlotCallback(err, data) {
    if (err.code) {
        console.info("isNotificationSlotEnabled failed " + JSON.stringify(err));
    } else {
        console.info("isNotificationSlotEnabled success");
    }
};

Notification.isNotificationSlotEnabled(
    { bundle: "ohos.samples.notification", },
    Notification.SlotType.SOCIAL_COMMUNICATION,
    getEnableSlotCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13

Notification.isNotificationSlotEnabled 9+

isNotificationSlotEnabled(bundle: BundleOption, type: SlotType): Promise<boolean>

获取指定应用的指定渠道类型的使能状态(Promise形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
bundle BundleOption 应用的包信息。
type SlotType 渠道类型。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回渠道使能状态。

示例:

// isNotificationSlotEnabled
Notification.isNotificationSlotEnabled({ bundle: "ohos.samples.notification", },
    Notification.SlotType.SOCIAL_COMMUNICATION).then((data) => {
    console.info("isNotificationSlotEnabled success, data: " + JSON.stringify(data));
});
1
2
3
4
5

Notification.setSyncNotificationEnabledWithoutApp9+

setSyncNotificationEnabledWithoutApp(userId: number, enable: boolean, callback: AsyncCallback<void>): void

设置是否将通知同步到未安装应用程序的设备(callback形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
userId number 用户ID。
enable boolean 是否启用。
callback AsyncCallback<void> 设置是否将通知同步到未安装应用程序的设备的回调函数。

示例:

let userId = 100;
let enable = true;

function callback(err) {
    if (err.code) {
        console.info("setSyncNotificationEnabledWithoutApp failed " + JSON.stringify(err));
    } else {
        console.info("setSyncNotificationEnabledWithoutApp success");
    }
}

Notification.setSyncNotificationEnabledWithoutApp(userId, enable, callback);
1
2
3
4
5
6
7
8
9
10
11
12

Notification.setSyncNotificationEnabledWithoutApp9+

setSyncNotificationEnabledWithoutApp(userId: number, enable: boolean): Promise<void>

设置是否将通知同步到未安装应用程序的设备(Promise形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
userId number 用户ID。
enable boolean 是否启用。

返回值:

类型 说明
Promise<void> 以Promise形式返回设置是否将通知同步到未安装应用程序的设备的结果。

示例:

let userId = 100;
let enable = true;

Notification.setSyncNotificationEnabledWithoutApp(userId, enable).then(() => {
    console.info('setSyncNotificationEnabledWithoutApp success');
}).catch((err) => {
    console.info('setSyncNotificationEnabledWithoutApp, err:' + JSON.stringify(err));
});
1
2
3
4
5
6
7
8

Notification.getSyncNotificationEnabledWithoutApp9+

getSyncNotificationEnabledWithoutApp(userId: number, callback: AsyncCallback<boolean>): void

获取同步通知到未安装应用程序设备的开关是否开启(callback形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
userId number 用户ID。
callback AsyncCallback<boolean> 获取同步通知到未安装应用程序设备的开关是否开启的回调函数。

示例:

let userId = 100;

function getSyncNotificationEnabledWithoutAppCallback(err, data) {
    if (err) {
        console.info('getSyncNotificationEnabledWithoutAppCallback, err:' + err);
    } else {
        console.info('getSyncNotificationEnabledWithoutAppCallback, data:' + data);
    }
}

Notification.getSyncNotificationEnabledWithoutApp(userId, getSyncNotificationEnabledWithoutAppCallback);
1
2
3
4
5
6
7
8
9
10
11

Notification.getSyncNotificationEnabledWithoutApp9+

getSyncNotificationEnabledWithoutApp(userId: number): Promise<boolean>

获取同步通知到未安装应用程序设备的开关是否开启(Promise形式)。

系统能力:SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

需要权限:ohos.permission.NOTIFICATION_CONTROLLER

参数:

参数名 类型 必填 说明
userId number 用户ID。

返回值:

类型 说明
Promise<boolean> 以Promise形式返回获取同步通知到未安装应用程序设备的开关是否开启的结果。

示例:

let userId = 100;
Notification.getSyncNotificationEnabledWithoutApp(userId).then((data) => {
    console.info('getSyncNotificationEnabledWithoutApp, data:' + data);
}).catch((err) => {
    console.info('getSyncNotificationEnabledWithoutApp, err:' + err);
});
1
2
3
4
5
6

NotificationSubscriber

作为订阅通知接口subscribe的入参,提供订阅者接收到新通知、取消通知等的回调方法。

系统API:此接口为系统接口,三方应用不支持调用。

onConsume

onConsume?: (data: SubscribeCallbackData) => void

接收到新通知的回调函数。

系统能力:SystemCapability.Notification.Notification

系统接口: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
data SubscribeCallbackData 新接收到的通知信息。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};

function onConsumeCallback(data) {
    let req = data.request;
    console.info('===> onConsume callback req.id:' + req.id);
};

var subscriber = {
    onConsume: onConsumeCallback
};

Notification.subscribe(subscriber, subscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

onCancel

onCancel?:(data: SubscribeCallbackData) => void

取消通知的回调函数。

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
data SubscribeCallbackData 需要取消的通知信息。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};

function onCancelCallback(data) {
    let req = data.request;
    console.info('===> onCancel callback req.id:' + req.id);
}

var subscriber = {
    onCancel: onCancelCallback
};

Notification.subscribe(subscriber, subscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

onUpdate

onUpdate?:(data: NotificationSortingMap) => void

更新通知排序的回调函数。

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
data NotificationSortingMap 最新的通知排序列表。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};

function onUpdateCallback(map) {
    console.info('===> onUpdateCallback map:' + JSON.stringify(map));
}

var subscriber = {
    onUpdate: onUpdateCallback
};

Notification.subscribe(subscriber, subscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

onConnect

onConnect?😦) => void

订阅完成的回调函数。

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};

function onConnectCallback() {
    console.info('===> onConnect in test');
}

var subscriber = {
    onConnect: onConnectCallback
};

Notification.subscribe(subscriber, subscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

onDisconnect

onDisconnect?😦) => void

取消订阅的回调函数。

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};
function unsubscribeCallback(err) {
    if (err.code) {
        console.info("unsubscribe failed " + JSON.stringify(err));
    } else {
        console.info("unsubscribeCallback");
    }
};

function onConnectCallback() {
    console.info('===> onConnect in test');
}
function onDisconnectCallback() {
    console.info('===> onDisconnect in test');
}

var subscriber = {
    onConnect: onConnectCallback,
    onDisconnect: onDisconnectCallback
};

// 订阅通知后会收到onConnect回调
Notification.subscribe(subscriber, subscribeCallback);
// 取消订阅后会收到onDisconnect回调
Notification.unsubscribe(subscriber, unsubscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

onDestroy

onDestroy?😦) => void

服务失联回调函数。

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};

function onDestroyCallback() {
    console.info('===> onDestroy in test');
}

var subscriber = {
    onDestroy: onDestroyCallback
};

Notification.subscribe(subscriber, subscribeCallback);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

onDoNotDisturbDateChange8+

onDoNotDisturbDateChange?:(mode: notification.DoNotDisturbDate) => void

免打扰时间选项发生变更时的回调函数。

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
mode notification.DoNotDisturbDate 回调返回免打扰时间选项变更。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};

function onDoNotDisturbDateChangeCallback(mode) {
    console.info('===> onDoNotDisturbDateChange:' + mode);
}

var subscriber = {
    onDoNotDisturbDateChange: onDoNotDisturbDateChangeCallback
};
Notification.subscribe(subscriber, subscribeCallback);

var doNotDisturbDate = {
    type: Notification.DoNotDisturbType.TYPE_ONCE,
    begin: new Date(),
    end: new Date(2021, 11, 15, 18, 0)
}
// 设置一个新的免打扰时间选项时触发onDoNotDisturbDateChange回调
Notification.setDoNotDisturbDate(doNotDisturbDate).then(() => {
	console.info("setDoNotDisturbDate sucess");
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

onEnabledNotificationChanged8+

onEnabledNotificationChanged?:(callbackData: EnabledNotificationCallbackData) => void

监听应用通知使能变化。

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

参数:

参数名 类型 必填 说明
callback AsyncCallback<EnabledNotificationCallbackData> 回调返回监听到的应用信息。

示例:

function subscribeCallback(err) {
    if (err.code) {
        console.info("subscribe failed " + JSON.stringify(err));
    } else {
        console.info("subscribeCallback");
    }
};

function onEnabledNotificationChangedCallback(callbackData) {
    console.info("bundle: " + callbackData.bundle);
    console.info("uid: " + callbackData.uid);
    console.info("enable: " + callbackData.enable);
};

var subscriber = {
    onEnabledNotificationChanged: onEnabledNotificationChangedCallback
};
Notification.subscribe(subscriber, subscribeCallback);

var bundle = {
    bundle: "bundleName1",
}
// 设置指定应用通知使能状态触发onEnabledNotificationChanged回调
Notification.enableNotification(bundle, false).then(() => {
	console.info("enableNotification sucess");
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

SubscribeCallbackData

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

名称 类型 可读 可写 说明
request NotificationRequest 通知内容。
sortingMap NotificationSortingMap 通知排序信息。
reason number 删除原因。
sound string 通知声音。
vibrationValues Array<number> 通知震动。

EnabledNotificationCallbackData8+

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

名称 类型 可读 可写 说明
bundle string 应用的包名。
uid number 应用的uid。
enable boolean 应用通知使能状态。

DoNotDisturbDate8+

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

名称 类型 可读 可写 说明
type DoNotDisturbType 免打扰设置的时间类型。
begin Date 免打扰设置的起点时间。
end Date 免打扰设置的终点时间。

DoNotDisturbType8+

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

名称 说明
TYPE_NONE 0 非通知勿扰类型。
TYPE_ONCE 1 以设置时间段(只看小时和分钟)一次执行勿扰。
TYPE_DAILY 2 以设置时间段(只看小时和分钟)每天执行勿扰。
TYPE_CLEARLY 3 以设置时间段(明确年月日时分)执行勿扰。

ContentType

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 说明
NOTIFICATION_CONTENT_BASIC_TEXT NOTIFICATION_CONTENT_BASIC_TEXT 普通类型通知。
NOTIFICATION_CONTENT_LONG_TEXT NOTIFICATION_CONTENT_LONG_TEXT 长文本类型通知。
NOTIFICATION_CONTENT_PICTURE NOTIFICATION_CONTENT_PICTURE 图片类型通知。
NOTIFICATION_CONTENT_CONVERSATION NOTIFICATION_CONTENT_CONVERSATION 社交类型通知。
NOTIFICATION_CONTENT_MULTILINE NOTIFICATION_CONTENT_MULTILINE 多行文本类型通知。

SlotLevel

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 说明
LEVEL_NONE 0 表示关闭通知功能。
LEVEL_MIN 1 表示通知功能已启用,但状态栏中不显示通知图标,且没有横幅或提示音。
LEVEL_LOW 2 表示通知功能已启用,且状态栏中显示通知图标,但没有横幅或提示音。
LEVEL_DEFAULT 3 表示通知功能已启用,状态栏中显示通知图标,没有横幅但有提示音。
LEVEL_HIGH 4 表示通知功能已启用,状态栏中显示通知图标,有横幅和提示音。

BundleOption

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
bundle string 应用的包信息。
uid number 用户ID。

NotificationKey

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
id number 通知ID。
label string 通知标签。

SlotType

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 说明
UNKNOWN_TYPE 0 未知类型。
SOCIAL_COMMUNICATION 1 社交类型。
SERVICE_INFORMATION 2 服务类型。
CONTENT_INFORMATION 3 内容类型。
OTHER_TYPES 0xFFFF 其他类型。

NotificationActionButton

描述通知中显示的操作按钮。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
title string 按钮标题。
wantAgent WantAgent 点击按钮时触发的WantAgent。
extras { [key: string]: any } 按钮扩展信息。
userInput8+ NotificationUserInput 用户输入对象实例。

NotificationBasicContent

描述普通文本通知。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
title string 通知标题。
text string 通知内容。
additionalText string 通知附加内容,是对通知内容的补充。

NotificationLongTextContent

描述长文本通知。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
title string 通知标题。
text string 通知内容。
additionalText string 通知附加内容,是对通知内容的补充。
longText string 通知的长文本。
briefText string 通知概要内容,是对通知内容的总结。
expandedTitle string 通知展开时的标题。

NotificationMultiLineContent

描述多行文本通知。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
title string 通知标题。
text string 通知内容。
additionalText string 通知附加内容,是对通知内容的补充。
briefText string 通知概要内容,是对通知内容的总结。
longTitle string 通知展开时的标题。
lines Array<string> 通知的多行文本。

NotificationPictureContent

描述附有图片的通知。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
title string 通知标题。
text string 通知内容。
additionalText string 通知附加内容,是对通知内容的补充。
briefText string 通知概要内容,是对通知内容的总结。
expandedTitle string 通知展开时的标题。
picture image.PixelMap 通知的图片内容。

NotificationContent

描述通知类型。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
contentType ContentType 通知内容类型。
normal NotificationBasicContent 基本类型通知内容。
longText NotificationLongTextContent 长文本类型通知内容。
multiLine NotificationMultiLineContent 多行类型通知内容。
picture NotificationPictureContent 图片类型通知内容。

NotificationFlagStatus8+

描述通知标志状态。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统接口:此接口为系统接口,三方应用不支持调用。

名称 说明
TYPE_NONE 0 默认标志。
TYPE_OPEN 1 通知标志打开。
TYPE_CLOSE 2 通知标志关闭。

NotificationFlags8+

描述通知标志的实例。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
soundEnabled NotificationFlagStatus 是否启用声音提示。
vibrationEnabled NotificationFlagStatus 是否启用振动提醒功能。

NotificationRequest

描述通知的请求。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
content NotificationContent 通知内容。
id number 通知ID。
slotType SlotType 通道类型。
isOngoing boolean 是否进行时通知。
isUnremovable boolean 是否可移除。
deliveryTime number 通知发送时间。
tapDismissed boolean 通知是否自动清除。
autoDeletedTime number 自动清除的时间。
wantAgent WantAgent WantAgent封装了应用的行为意图,点击通知时触发该行为。
extraInfo {[key: string]: any} 扩展参数。
color number 通知背景颜色。预留能力,暂未支持。
colorEnabled boolean 通知背景颜色是否使能。预留能力,暂未支持。
isAlertOnce boolean 设置是否仅有一次此通知提醒。
isStopwatch boolean 是否显示已用时间。
isCountDown boolean 是否显示倒计时时间。
isFloatingIcon boolean 是否显示状态栏图标。
label string 通知标签。
badgeIconStyle number 通知角标类型。
showDeliveryTime boolean 是否显示分发时间。
actionButtons Array<NotificationActionButton> 通知按钮,最多两个按钮。
smallIcon image.PixelMap 通知小图标。可选字段,大小不超过30KB。
largeIcon image.PixelMap 通知大图标。可选字段,大小不超过30KB。
creatorBundleName string 创建通知的包名。
creatorUid number 创建通知的UID。
creatorPid number 创建通知的PID。
creatorUserId8+ number 创建通知的UserId。
hashCode string 通知唯一标识。
classification string 通知分类。
系统API: 此接口为系统接口,三方应用不支持调用。
groupName8+ string 组通知名称。
template8+ NotificationTemplate 通知模板。
isRemoveAllowed8+ boolean 通知是否能被移除。
系统API: 此接口为系统接口,三方应用不支持调用。
source8+ number 通知源。
系统API: 此接口为系统接口,三方应用不支持调用。
distributedOption8+ DistributedOptions 分布式通知的选项。
deviceId8+ string 通知源的deviceId。
系统API: 此接口为系统接口,三方应用不支持调用。
notificationFlags8+ NotificationFlags 获取NotificationFlags。
removalWantAgent9+ WantAgent 当移除通知时,通知将被重定向到的WantAgent实例。
badgeNumber9+ number 应用程序图标上显示的通知数。

DistributedOptions8+

描述分布式选项。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
isDistributed boolean 是否为分布式通知。
supportDisplayDevices Array<string> 可以同步通知到的设备列表。
supportOperateDevices Array<string> 可以打开通知的设备列表。
remindType number 通知的提醒方式。
系统API: 此接口为系统接口,三方应用不支持调用。

NotificationSlot

描述通知槽

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
type SlotType 通道类型。
level number 通知级别,不设置则根据通知渠道类型有默认值。
desc string 通知渠道描述信息。
badgeFlag boolean 是否显示角标。
bypassDnd boolean 置是否在系统中绕过免打扰模式。
lockscreenVisibility number 在锁定屏幕上显示通知的模式。
vibrationEnabled boolean 是否可振动。
sound string 通知提示音。
lightEnabled boolean 是否闪灯。
lightColor number 通知灯颜色。
vibrationValues Array<number> 通知振动样式。
enabled9+ boolean 此通知插槽中的启停状态。

NotificationSorting

提供有关活动通知的排序信息。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

名称 类型 可读 可写 说明
slot NotificationSlot 通知通道内容。
hashCode string 通知唯一标识。
ranking number 通知排序序号。

NotificationSortingMap

提供关于已订阅的所有通知中活动通知的排序信息

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统API:此接口为系统接口,三方应用不支持调用。

名称 类型 可读 可写 说明
sortings {[key: string]: NotificationSorting} 通知排序信息数组。
sortedHashCode Array<string> 通知唯一标识数组。

NotificationSubscribeInfo

设置订阅所需通知的发布者的信息。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

名称 类型 可读 可写 说明
bundleNames Array<string> 指定订阅哪些包名的APP发来的通知。
userId number 指定订阅哪个用户下发来的通知。

NotificationTemplate8+

通知模板。

系统能力:以下各项对应的系统能力均为SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
name string 模板名称。
data {[key:string]: Object} 模板数据。

NotificationUserInput8+

保存用户输入的通知消息。

系统能力:SystemCapability.Notification.Notification

名称 类型 可读 可写 说明
inputKey string 用户输入时用于标识此输入的key。

DeviceRemindType8+

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

名称 说明
IDLE_DONOT_REMIND 0 设备未被使用,无需提醒。
IDLE_REMIND 1 提醒设备未被使用。
ACTIVE_DONOT_REMIND 2 设备正在使用,无需提醒。
ACTIVE_REMIND 3 提醒设备正在使用。

SourceType8+

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

名称 说明
TYPE_NORMAL 0 一般通知。
TYPE_CONTINUOUS 1 连续通知。
TYPE_TIMER 2 计划通知。

RemoveReason9+

系统能力:SystemCapability.Notification.Notification

系统API: 此接口为系统接口,三方应用不支持调用。

名称 说明
CLICK_REASON_REMOVE 1 点击通知后删除通知。
CANCEL_REASON_REMOVE 2 用户删除通知。