标签(tag)相关接口

本章节介绍了如何使用HarmonyOS SDK给设备、账号、别名绑定、解绑标签。

功能描述

移动推送SDK可以给设备、账号、别名绑定、解绑标签,绑定标签后,可以按标签推送,标签绑定的设备、标签绑定账号关联的设备、标签绑定别名关联的设备都会接收到推送。

绑定标签

SDK提供bindTag方法绑定标签。

设备绑定标签示例代码如下:

import { aliyunPush, TAG_TARGET } from '@aliyun/push';

aliyunPush.bindTag({
  target: TAG_TARGET.DEVICE,
  tags: ['示意标签1', '示意标签2']
}, (err) => {
  if (err) {
    console.error(`设备绑定标签失败,错误码:${err.code} 错误信息${err.message}`);
    return;
  }
  console.info(`设备绑定标签成功`);
})

账号绑定标签时,需要先确保设备已使用绑定账号接口绑定账号,再调用bindTag方法。示例代码如下:

import { aliyunPush, TAG_TARGET } from '@aliyun/push';

aliyunPush.bindTag({
  target: TAG_TARGET.ACCOUNT,
  tags: ['示意标签1', '示意标签2']
}, (err) => {
  if (err) {
    console.error(`账号绑定标签失败,错误码:${err.code} 错误信息${err.message}`);
    return;
  }
  console.info(`账号绑定标签成功`);
})

别名绑定标签时,需要指定要绑定的别名。示例代码如下:

import { aliyunPush, TAG_TARGET } from '@aliyun/push';

aliyunPush.bindTag({
  target: TAG_TARGET.ALIAS,
  tags: ['示意标签1', '示意标签2'],
  alias: '目标别名'
}, (err) => {
  if (err) {
    console.error(`别名绑定标签失败,错误码:${err.code} 错误信息${err.message}`);
    return;
  }
  console.info(`别名绑定标签成功`);
})

解绑标签

SDK提供unbindTag方法解绑标签。

设备解绑标签示例代码如下:

import { aliyunPush, TAG_TARGET } from '@aliyun/push';

aliyunPush.unbindTag({
  target: TAG_TARGET.DEVICE,
  tags: ['示意标签1', '示意标签2']
}, (err) => {
  if (err) {
    console.error(`设备解绑标签失败,错误码:${err.code} 错误信息${err.message}`);
    return;
  }
  console.info(`设备解绑标签成功`);
})

账号解绑标签时,需要先确保设备已使用绑定账号接口绑定账号,再调用unbindTag方法。示例代码如下:

import { aliyunPush, TAG_TARGET } from '@aliyun/push';

aliyunPush.unbindTag({
  target: TAG_TARGET.ACCOUNT,
  tags: ['示意标签1', '示意标签2']
}, (err) => {
  if (err) {
    console.error(`账号解绑标签失败,错误码:${err.code} 错误信息${err.message}`);
    return;
  }
  console.info(`账号解绑标签成功`);
})

别名解绑标签时,需要指定要解绑的别名。示例代码如下:

import { aliyunPush, TAG_TARGET } from '@aliyun/push';

aliyunPush.unbindTag({
  target: TAG_TARGET.ALIAS,
  tags: ['示意标签1', '示意标签2'],
  alias: '目标别名'
}, (err) => {
  if (err) {
    console.error(`别名解绑标签失败,错误码:${err.code} 错误信息${err.message}`);
    return;
  }
  console.info(`别名解绑标签成功`);
})

查询标签

SDK提供listTags方法查询设备绑定的标签。当前不提供查询账号、别名绑定的标签。

查询设备标签的示例代码如下:

import { aliyunPush } from '@aliyun/push';

aliyunPush.listTags((err, tags) => {
  if (err) {
    console.error(`查询设备标签失败,错误码:${err.code} 错误信息${err.message}`);
    return;
  }
  console.info(`查询设备标签成功 ${tags?.join(',')}`);
})