有源标签

2024-01-23 16:48 更新

本模块提供有源标签的使用,包括初始化有源标签芯片、读取有源标签内容、写入内容到有源标签等。

说明

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

导入模块

  1. import connectedTag from '@ohos.connectedTag';

connectedTag.init

init(): boolean

初始化有源标签芯片。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

返回值:

类型

说明

boolean

true:初始化成功, false:初始化失败。

connectedTag.uninit

uninit(): boolean

卸载有源标签芯片资源。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

返回值:

类型

说明

boolean

true:卸载操作成功, false:卸载操作失败。

connectedTag.readNdefTag

readNdefTag(): Promise<string>

读取有源标签内容,使用promise方式作为异步方法。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

返回值:

类型

说明

Promise<string>

返回读取有源标签内容。

示例:

  1. import connectedTag from '@ohos.connectedTag';
  2. connectedTag.readNdefTag().then((data) => {
  3. console.log("connectedTag readNdefTag Promise data = " + data);
  4. }).catch((err)=> {
  5. console.log("connectedTag readNdefTag Promise err: " + err);
  6. });

connectedTag.readNdefTag

readNdefTag(callback: AsyncCallback<string>): void

读取有源标签内容,使用AsyncCallback方式作为异步方法。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

参数:

参数名

类型

必填

说明

callback

AsyncCallback<string>

读取有源标签内容回调函数。

示例:

  1. import connectedTag from '@ohos.connectedTag';
  2. connectedTag.readNdefTag((err, data)=> {
  3. if (err) {
  4. console.log("connectedTag readNdefTag AsyncCallback err: " + err);
  5. } else {
  6. console.log("connectedTag readNdefTag AsyncCallback data: " + data);
  7. }
  8. });

connectedTag.writeNdefTag

writeNdefTag(data: string): Promise<void>

写入内容到有源标签,使用promise方式作为异步方法。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

参数:

参数名

类型

必填

说明

data

string

有源标签内容, 长度最大是1024个字节。

返回值:

类型

说明

Promise<void>

无返回值。

示例:

  1. import connectedTag from '@ohos.connectedTag';
  2. var rawData = "010203"; // change it tobe correct.
  3. connectedTag.writeNdefTag(rawData).then(() => {
  4. console.log("connectedTag writeNdefTag Promise success.");
  5. }).catch((err)=> {
  6. console.log("connectedTag writeNdefTag Promise err: " + err);
  7. });

connectedTag.writeNdefTag

writeNdefTag(data: string, callback: AsyncCallback<void>): void

写入内容到有源标签,使用AsyncCallback方式作为异步方法。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

参数:

参数名

类型

必填

说明

data

string

有源标签内容, 长度最大是1024个字节。

callback

AsyncCallback<void>

读取有源标签内容回调函数。

示例:

  1. import connectedTag from '@ohos.connectedTag';
  2. var rawData = "010203"; // change it tobe correct.
  3. connectedTag.writeNdefTag(rawData, (err)=> {
  4. if (err) {
  5. console.log("connectedTag writeNdefTag AsyncCallback err: " + err);
  6. } else {
  7. console.log("connectedTag writeNdefTag AsyncCallback success.");
  8. }
  9. });

connectedTag.on('notify')

on(type: "notify", callback: Callback<number>): void

注册NFC场强状态事件。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

参数:

参数名

类型

必填

说明

type

string

固定填"notify"字符串

callback

Callback<number>

状态改变回调函数,返回值参见NfcRfType

connectedTag.off('notify')

off(type: "notify", callback?: Callback<number>): void

取消NFC场强状态事件的注册。

需要权限:ohos.permission.NFC_TAG

系统能力:SystemCapability.Communication.ConnectedTag

参数:

参数名

类型

必填

说明

type

string

固定填"notify"字符串

callback

Callback<number>

状态改变回调函数。如果callback不填,将“去注册”该事件关联的所有回调函数。

示例:

  1. import connectedTag from '@ohos.connectedTag';
  2. // Register event
  3. connectedTag.on("notify", (err, rfState)=> {
  4. if (err) {
  5. console.log("connectedTag on Callback err: " + err);
  6. } else {
  7. console.log("connectedTag on Callback rfState: " + rfState);
  8. }
  9. });
  10. var initStatus = connectedTag.init();
  11. console.log("connectedTag init status: " + initStatus);
  12. // Add nfc connecected tag business oprations here...
  13. // connectedTag.writeNdefTag(rawData)
  14. // connectedTag.readNdefTag()
  15. var uninitStatus = connectedTag.uninit();
  16. console.log("connectedTag uninit status: " + uninitStatus);
  17. // Unregister event
  18. connectedTag.off("notify", (err, rfState)=> {
  19. if (err) {
  20. console.log("connectedTag off Callback err: " + err);
  21. } else {
  22. console.log("connectedTag off Callback rfState: " + rfState);
  23. }
  24. });

NfcRfType

表示NFC场强状态的枚举。

系统能力:SystemCapability.Communication.ConnectedTag

名称

说明

NFC_RF_LEAVE

0

NFC离场事件

NFC_RF_ENTER

1

NFC进场事件

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号