openharmony 鸿蒙 js-apis-notificationSubscribe-sys

2025-06-12 浏览 (1)

@ohos.notificationSubscribe (NotificationSubscribe) (System API)

The notificationSubscribe module provides APIs for notification subscription, notification unsubscription, subscription removal, and more. In general cases, only system applications can call these APIs.

NOTE

The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.

The APIs provided by this module are system APIs.

Modules to Import

import { notificationSubscribe } from '@kit.NotificationKit';

notificationSubscribe.subscribe

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

Subscribes to a notification with the subscription information specified. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
subscriberNotificationSubscriberYesNotification subscriber.
infoNotificationSubscribeInfoYesNotification subscription information.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600012No memory space.

Example

import { BusinessError } from '@kit.BasicServicesKit';

// subscribe callback
let subscribeCallback = (err: BusinessError) => {
  if (err) {
    console.error(`subscribe failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("subscribe success");
  }
}
let onConsumeCallback = (data: notificationSubscribe.SubscribeCallbackData) => {
  console.info("Consume callback: " + JSON.stringify(data));
}
let subscriber: notificationSubscribe.NotificationSubscriber = {
  onConsume: onConsumeCallback
};
// Bundle names are not verified. You need to determine the target bundle names.
let info: notificationSubscribe.NotificationSubscribeInfo = {
  bundleNames: ["bundleName1","bundleName2"]
};
notificationSubscribe.subscribe(subscriber, info, subscribeCallback);

notificationSubscribe.subscribe

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

Subscribes to notifications of all applications under this user. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
subscriberNotificationSubscriberYesNotification subscriber.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600012No memory space.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let subscribeCallback = (err: BusinessError) => {
  if (err) {
    console.error(`subscribe failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("subscribe success");
  }
}
let onConsumeCallback = (data: notificationSubscribe.SubscribeCallbackData) => {
  console.info("Consume callback: " + JSON.stringify(data));
}
let subscriber: notificationSubscribe.NotificationSubscriber = {
  onConsume: onConsumeCallback
};
notificationSubscribe.subscribe(subscriber, subscribeCallback);

notificationSubscribe.subscribe

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

Subscribes to a notification with the subscription information specified. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
subscriberNotificationSubscriberYesNotification subscriber.
infoNotificationSubscribeInfoNoNotification subscription information. By default, this parameter is left empty, which means to subscribe to notifications of all applications under this user.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600012No memory space.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let onConsumeCallback = (data: notificationSubscribe.SubscribeCallbackData) => {
  console.info("Consume callback: " + JSON.stringify(data));
}
let subscriber: notificationSubscribe.NotificationSubscriber = {
  onConsume: onConsumeCallback
};
notificationSubscribe.subscribe(subscriber).then(() => {
  console.info("subscribe success");
}).catch((err: BusinessError) => {
  console.error("subscribe fail: " + JSON.stringify(err));
});

notificationSubscribe.subscribeSelf11+

subscribeSelf(subscriber: NotificationSubscriber): Promise<void>

Subscribes to notifications of the application and specifies subscription information. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
subscriberNotificationSubscriberYesNotification subscriber.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600012No memory space.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let onConsumeCallback = (data: notificationSubscribe.SubscribeCallbackData) => {
  console.info("Consume callback: " + JSON.stringify(data));
}
let subscriber: notificationSubscribe.NotificationSubscriber = {
  onConsume: onConsumeCallback
};
notificationSubscribe.subscribeSelf(subscriber).then(() => {
  console.info("subscribeSelf success");
}).catch((err: BusinessError) => {
  console.error("subscribeSelf fail: " + JSON.stringify(err));
});

notificationSubscribe.unsubscribe

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

Unsubscribes from a notification. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
subscriberNotificationSubscriberYesNotification subscriber.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let unsubscribeCallback = (err: BusinessError) => {
  if (err) {
    console.error(`unsubscribe failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("unsubscribe success");
  }
}
let onDisconnectCallback = () => {
  console.info("subscribe disconnect");
}
let subscriber: notificationSubscribe.NotificationSubscriber = {
  onDisconnect: onDisconnectCallback
};
notificationSubscribe.unsubscribe(subscriber, unsubscribeCallback);

notificationSubscribe.unsubscribe

unsubscribe(subscriber: NotificationSubscriber): Promise<void>

Unsubscribes from a notification. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
subscriberNotificationSubscriberYesNotification subscriber.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let onDisconnectCallback = () => {
  console.info("subscribe disconnect");
}
let subscriber: notificationSubscribe.NotificationSubscriber = {
  onDisconnect: onDisconnectCallback
};
notificationSubscribe.unsubscribe(subscriber).then(() => {
  console.info("unsubscribe success");
}).catch((err: BusinessError) => {
  console.error("unsubscribe fail: " + JSON.stringify(err));
});

notificationSubscribe.remove

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

Removes a notification based on the bundle information and notification key. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
bundleBundleOptionYesBundle information of the application.
notificationKeyNotificationKeyYesNotification key.
reasonRemoveReasonYesReason for removing the notification.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600007The notification is not exist.
17700001The specified bundle name was not found.

Example

import { BusinessError } from '@kit.BasicServicesKit';
import { notificationManager } from '@kit.NotificationKit';

let removeCallback = (err: BusinessError) => {
  if (err) {
    console.error(`remove failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("remove success");
  }
}
let bundle: notificationManager.BundleOption = {
  bundle: "bundleName1",
};
let notificationKey: notificationSubscribe.NotificationKey = {
  id: 0,
  label: "label",
};
let reason: notificationSubscribe.RemoveReason = notificationSubscribe.RemoveReason.CLICK_REASON_REMOVE;
notificationSubscribe.remove(bundle, notificationKey, reason, removeCallback);

notificationSubscribe.remove

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

Removes a notification based on the bundle information and notification key. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
bundleBundleOptionYesBundle information of the application.
notificationKeyNotificationKeyYesNotification key.
reasonRemoveReasonYesReason for removing the notification.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600007The notification is not exist.
17700001The specified bundle name was not found.

Example

import { BusinessError } from '@kit.BasicServicesKit';
import { notificationManager } from '@kit.NotificationKit';

let bundle: notificationManager.BundleOption = {
  bundle: "bundleName1",
};
let notificationKey: notificationSubscribe.NotificationKey = {
  id: 0,
  label: "label",
};
let reason: notificationSubscribe.RemoveReason = notificationSubscribe.RemoveReason.CLICK_REASON_REMOVE;
notificationSubscribe.remove(bundle, notificationKey, reason).then(() => {
  console.info("remove success");
}).catch((err: BusinessError) => {
  console.error("remove fail: " + JSON.stringify(err));
});

notificationSubscribe.remove

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

Removes a notification based on the specified unique notification ID. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
hashCodestringYesUnique notification ID. It is the value of hashCode in the NotificationRequest object of SubscribeCallbackData in the onConsume callback.
reasonRemoveReasonYesReason for removing the notification.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600007The notification is not exist.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let hashCode: string = 'hashCode';
let removeCallback = (err: BusinessError) => {
  if (err) {
    console.error(`remove failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("remove success");
  }
}
let reason: notificationSubscribe.RemoveReason = notificationSubscribe.RemoveReason.CANCEL_REASON_REMOVE;
notificationSubscribe.remove(hashCode, reason, removeCallback);

notificationSubscribe.remove

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

Removes a notification based on the specified unique notification ID. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
hashCodestringYesUnique notification ID. It is the value of hashCode in the NotificationRequest object of SubscribeCallbackData in the onConsume callback.
reasonRemoveReasonYesReason for removing the notification.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600007The notification is not exist.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let hashCode: string = 'hashCode';
let reason: notificationSubscribe.RemoveReason = notificationSubscribe.RemoveReason.CLICK_REASON_REMOVE;
notificationSubscribe.remove(hashCode, reason).then(() => {
	console.info("remove success");
}).catch((err: BusinessError) => {
  console.error("remove fail: " + JSON.stringify(err));
});

notificationSubscribe.remove10+

remove(hashCodes: Array<String>, reason: RemoveReason, callback: AsyncCallback<void>): void

Removes specified notifications. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
hashCodesArray<String>YesArray of unique notification IDs. It is the value of hashCode in the NotificationRequest object of SubscribeCallbackData in the onConsume callback.
reasonRemoveReasonYesReason for removing the notification.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let hashCodes: string[] = ['hashCode1', 'hashCode2'];
let removeCallback = (err: BusinessError) => {
  if (err) {
    console.error(`remove failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("remove success");
  }
}
let reason: notificationSubscribe.RemoveReason = notificationSubscribe.RemoveReason.CANCEL_REASON_REMOVE;
notificationSubscribe.remove(hashCodes, reason, removeCallback);

notificationSubscribe.remove10+

remove(hashCodes: Array<String>, reason: RemoveReason): Promise<void>

Removes specified notifications. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
hashCodesArray<String>YesArray of unique notification IDs.
reasonRemoveReasonYesReason for removing the notification.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let hashCodes: string[] = ['hashCode1','hashCode2'];
let reason: notificationSubscribe.RemoveReason = notificationSubscribe.RemoveReason.CLICK_REASON_REMOVE;
notificationSubscribe.remove(hashCodes, reason).then(() => {
  console.info("remove success");
}).catch((err: BusinessError) => {
  console.error("remove fail: " + JSON.stringify(err));
});

notificationSubscribe.removeAll

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

Removes all notifications for a specified application. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
bundleBundleOptionYesBundle information of the application.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
17700001The specified bundle name was not found.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let removeAllCallback = (err: BusinessError) => {
  if (err) {
    console.error(`removeAll failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("removeAll success");
  }
}
let bundle: notificationSubscribe.BundleOption = {
  bundle: "bundleName1",
};
notificationSubscribe.removeAll(bundle, removeAllCallback);

notificationSubscribe.removeAll

removeAll(callback: AsyncCallback<void>): void

Removes all notifications. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let removeAllCallback = (err: BusinessError) => {
    if (err) {
        console.error(`removeAll failed, code is ${err.code}, message is ${err.message}`);
    } else {
        console.info("removeAll success");
    }
}
notificationSubscribe.removeAll(removeAllCallback);

notificationSubscribe.removeAll

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

Removes all notifications for a specified application. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
bundleBundleOptionNoBundle information of the application. By default, this parameter is left empty, indicating that all notifications will be removed.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
17700001The specified bundle name was not found.

Example

import { BusinessError } from '@kit.BasicServicesKit';

// If no application is specified, notifications of all applications are deleted.
notificationSubscribe.removeAll().then(() => {
	console.info("removeAll success");
}).catch((err: BusinessError) => {
  console.error("removeAll fail: " + JSON.stringify(err));
});

notificationSubscribe.removeAll

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

Removes all notifications for a specified user. This API uses an asynchronous callback to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
userIdnumberYesUser ID.
callbackAsyncCallback<void>YesCallback used to return the result.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600008The user does not exist.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let removeAllCallback = (err: BusinessError) => {
  if (err) {
    console.error(`removeAll failed, code is ${err.code}, message is ${err.message}`);
  } else {
    console.info("removeAll success");
  }
}
// Use the actual user ID when calling the API.
let userId: number = 1;
notificationSubscribe.removeAll(userId, removeAllCallback);

notificationSubscribe.removeAll

removeAll(userId: number): Promise<void>

Removes all notifications for a specified user. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
userIdnumberYesUser ID.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600001Internal error.
1600002Marshalling or unmarshalling error.
1600003Failed to connect to the service.
1600008The user does not exist.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let userId: number = 1;
notificationSubscribe.removeAll(userId).then(() => {
	console.info("removeAll success");
}).catch((err: BusinessError) => {
  console.error("removeAll fail: " + JSON.stringify(err));
});

notificationSubscribe.distributeOperation18+

distributeOperation(hashcode: string, operationInfo?: OperationInfo): Promise<void>

Triggers a notification for cross-device operations, such as tap-to-redirect and quick reply. This API uses a promise to return the result.

System capability: SystemCapability.Notification.Notification

Required permissions: ohos.permission.NOTIFICATION_CONTROLLER

System API: This is a system API.

Parameters

NameTypeMandatoryDescription
hashcodestringYesUnique notification ID.
operationInfoOperationInfoNoCross-device operation information.

Return value

TypeDescription
Promise<void>Promise that returns no value.

Error codes

For details about the error codes, see Universal Error Codes and Notification Error Codes.

IDError Message
201Permission denied.
202Not system application to call the interface.
401Parameter error. Possible causes: 1. Mandatory parameters are left unspecified. 2. Incorrect parameter types. 3.Parameter verification failed.
1600010Distributed operation failed.
1600021Distributed operation timed out.

Example

import { BusinessError } from '@kit.BasicServicesKit';

let hashcode: string = 'hashcode';
let operationInfo: notificationSubscribe.OperationInfo = {
  actionName: "actionName",
  userInput: "userInput",
};
notificationSubscribe.distributeOperation(hashcode, operationInfo).then(() => {
	console.info("distributeOperation success");
}).catch((err: BusinessError) => {
  console.error("distributeOperation fail: " + JSON.stringify(err));
});

NotificationKey

System capability: SystemCapability.Notification.Notification

System API: This is a system API.

NameTypeMandatoryDescription
idnumberYesNotification ID.
labelstringNoNotification label. This parameter is left empty by default.

RemoveReason

System capability: SystemCapability.Notification.Notification

System API: This is a system API.

NameValueDescription
CLICK_REASON_REMOVE1The notification is removed after a click on it.
CANCEL_REASON_REMOVE2The notification is removed by the user.

OperationInfo18+

System capability: SystemCapability.Notification.Notification

System API: This is a system API.

NameTypeMandatoryDescription
actionNamestringNoOperation button displayed in the notification. The value must be the same as that of title in NotificationActionButton.
userInputstringNoUser input, used to apply quick reply across devices. The value must be the same as that of inputKey in NotificationUserInput.

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Notification Kit (User Notification Service)

harmony 鸿蒙Notification

harmony 鸿蒙Notification Error Codes

harmony 鸿蒙NotificationActionButton

harmony 鸿蒙NotificationCommonDef

harmony 鸿蒙NotificationContent (System API)

harmony 鸿蒙NotificationContent

harmony 鸿蒙NotificationFlags (System API)

harmony 鸿蒙NotificationFlags

harmony 鸿蒙NotificationRequest (System API)

  • 所属分类: 后端技术
  • 本文标签: 软件 鸿蒙
  • 版权声明: 本文链接 https://seaxiang.com/blog/Hz1Y1o