Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
a1224011
D
Docs
项目概览
OpenHarmony
/
Docs
1 年多 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
a1224011
编写于
11月 02, 2022
作者:
Z
zhangxiuping
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Update the nfc docs for throw error.
Signed-off-by:
N
zhangxiuping
<
zhangxiuping@huawei.com
>
上级
c853f403
变更
4
展开全部
隐藏空白更改
内联
并排
Showing
4 changed file
with
1557 addition
and
764 deletion
+1557
-764
zh-cn/application-dev/reference/apis/js-apis-nfcTag.md
zh-cn/application-dev/reference/apis/js-apis-nfcTag.md
+122
-76
zh-cn/application-dev/reference/apis/js-apis-nfctech.md
zh-cn/application-dev/reference/apis/js-apis-nfctech.md
+1200
-658
zh-cn/application-dev/reference/apis/js-apis-tagSession.md
zh-cn/application-dev/reference/apis/js-apis-tagSession.md
+191
-30
zh-cn/application-dev/reference/errorcodes/errorcode-nfc.md
zh-cn/application-dev/reference/errorcodes/errorcode-nfc.md
+44
-0
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-nfcTag.md
浏览文件 @
a1224011
...
...
@@ -64,29 +64,57 @@ import tag from '@ohos.nfc.tag';
import
tag
from
'
@ohos.nfc.tag
'
;
onCreate
(
want
,
launchParam
)
{
// add other code here
// add other code here
...
// want is initialized by nfc service, contains tag info for this found tag
var
tagInfo
=
tag
.
getTagInfo
(
want
);
if
(
tagInfo
==
undefined
)
{
var
tagInfo
;
try
{
tag
.
getTagInfo
(
want
);
}
catch
(
error
)
{
console
.
log
(
"
tag.getTagInfo catched error:
"
+
error
);
}
if
(
tagInfo
==
null
||
tagInfo
==
undefined
)
{
console
.
log
(
"
no TagInfo to be created, ignore it.
"
);
return
;
}
// get the supported technologies for this found tag.
var
isNfcATag
=
false
;
var
isIsoDepTag
=
false
;
for
(
var
i
=
0
;
i
<
tagInfo
.
technology
.
length
;
i
++
)
{
if
(
tagInfo
.
technology
[
i
]
==
tag
.
NFC_A
)
{
isNfcATag
=
true
;
break
;
}
// also check for technology: tag.NFC_B/NFC_F/NFC_V/ISO_DEP/NDEF/MIFARE_CLASSIC/MIFARE_ULTRALIGHT/NDEF_FORMATABLE
if
(
tagInfo
.
technology
[
i
]
==
tag
.
ISO_DEP
)
{
isIsoDepTag
=
true
;
}
// also check for technology: tag.NFC_B/NFC_F/NFC_V/NDEF/MIFARE_CLASSIC/MIFARE_ULTRALIGHT/NDEF_FORMATABLE
}
// use NfcA APIs to access the found tag.
if
(
isNfcATag
)
{
var
nfcA
=
tag
.
getNfcATag
(
taginfo
);
var
nfcA
;
try
{
nfcA
=
tag
.
getNfcATag
(
taginfo
);
}
catch
(
error
)
{
console
.
log
(
"
tag.getNfcATag catched error:
"
+
error
);
}
// other code to read or write this found tag.
}
// use the same code to handle for "NfcA/NfcB/NfcF/NfcV/IsoDep/Ndef/MifareClassic/MifareUL/NdefFormatable", such as:
// var isoDep = tag.getIsoDepTag(taginfo);
// use getIsoDep APIs to access the found tag.
if
(
isIsoDepTag
)
{
var
isoDep
;
try
{
isoDep
=
tag
.
getIsoDep
(
taginfo
);
}
catch
(
error
)
{
console
.
log
(
"
tag.getIsoDep catched error:
"
+
error
);
}
// other code to read or write this found tag.
}
// use the same code to handle for "NfcA/NfcB/NfcF/NfcV/Ndef/MifareClassic/MifareUL/NdefFormatable".
}
```
...
...
@@ -154,99 +182,135 @@ getNfcVTag(tagInfo: [TagInfo](#taginfo)): [NfcVTag](js-apis-nfctech.md#nfcvtag)
| -------- | ---------------- |
|
[
NfcVTag
](
js-apis-nfctech.md#nfcvtag
)
| NFC V类型Tag对象。 |
## tag.getIsoDep
Tag
<sup>9+</sup>
## tag.getIsoDep<sup>9+</sup>
getIsoDep
Tag
(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
IsoDepTag
](
js-apis-nfctech.md#isoDepTag9
)
getIsoDep(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
IsoDepTag
](
js-apis-nfctech.md#isoDepTag9
)
获取IsoDep类型Tag对象,通过该对象可访问Iso Dep技术类型的Tag。
**需要权限**
:ohos.permission.NFC_TAG
获取IsoDep类型Tag对象,通过该对象可访问支持IsoDep技术类型的Tag。
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | ---------------------------------------- |
| taginfo |
[
TagInfo
](
#taginfo
)
| 是 | 包含Tag技术类型和相关参数,从tag.getTagInfo(want: Want)获取。 |
**返回值:**
|
**类型**
|
**说明**
|
| ---------- | ------------------|
|
[
IsoDepTag
](
js-apis-nfctech.md#isodeptag9
)
| Iso Dep类型Tag对象。 |
## tag.getNdefTag<sup>9+</sup>
|
[
IsoDepTag
](
js-apis-nfctech.md#isodeptag9
)
| IsoDep类型Tag对象,通过该对象访问IsoDep类型的相关接口。 |
getNdefTag(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
NdefTag
](
js-apis-nfctech.md#ndeftag9
)
**错误码:**
以下错误码的详细介绍请参见
[
NFC错误码
](
../errorcodes/errorcode-nfc.md
)
。
| 错误码ID | 错误信息|
| ------- | -------|
| 3100201 | Tag running state of service is abnormal. |
获取Ndef类型Tag对象,通过该对象可访问Ndef技术类型的Tag。
## tag.getNdef<sup>9+</sup>
getNdef(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
NdefTag
](
js-apis-nfctech.md#ndeftag9
)
**需要权限**
:ohos.permission.NFC_TAG
获取NDEF类型Tag对象,通过该对象可访问支持NDEF技术类型的Tag。
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | ---------------------------------------- |
| taginfo |
[
TagInfo
](
#taginfo
)
| 是 | 包含Tag技术类型和相关参数,从tag.getTagInfo(want: Want)获取。 |
**返回值:**
|
**类型**
|
**说明**
|
| ---------| -------------- |
|
[
NdefTag
](
js-apis-nfctech.md#ndeftag9
)
| N
def类型Tag对象
。|
|
[
NdefTag
](
js-apis-nfctech.md#ndeftag9
)
| N
DEF类型Tag对象,通过该对象访问NDEF类型的相关接口
。|
## tag.getMifareClassicTag<sup>9+</sup>
**错误码:**
以下错误码的详细介绍请参见
[
NFC错误码
](
../errorcodes/errorcode-nfc.md
)
。
| 错误码ID | 错误信息|
| ------- | -------|
| 3100201 | Tag running state of service is abnormal. |
getMifareClassicTag(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
MifareClassicTag
](
js-apis-nfctech.md#mifareclassictag-9
)
## tag.getMifareClassic<sup>9+</sup>
获取Mifare Classic类型Tag对象,通过该对象访问Mifare Classic技术类型的Tag。
getMifareClassic(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
MifareClassicTag
](
js-apis-nfctech.md#mifareclassictag-9
)
**需要权限**
:ohos.permission.NFC_TAG
获取MIFARE Classic类型Tag对象,通过该对象访问支持MIFARE Classic技术类型的Tag。
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | ---------------------------------------- |
| taginfo |
[
TagInfo
](
#taginfo
)
| 是 | 包含Tag技术类型和相关参数,从tag.getTagInfo(want: Want)获取。 |
**返回值:**
|
**类型**
|
**说明**
|
| ----------------- | ------------------------|
|
[
MifareClassicTag
](
js-apis-nfctech.md#mifareclassictag-9
)
| M
ifare Classic类型Tag对象
。 |
|
[
MifareClassicTag
](
js-apis-nfctech.md#mifareclassictag-9
)
| M
IFARE Classic类型Tag对象,通过该对象访问MIFARE Classic类型的相关接口
。 |
## tag.getMifareUltralightTag<sup>9+</sup>
**错误码:**
以下错误码的详细介绍请参见
[
NFC错误码
](
../errorcodes/errorcode-nfc.md
)
。
| 错误码ID | 错误信息|
| ------- | -------|
| 3100201 | Tag running state of service is abnormal. |
getMifareUltralightTag(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
MifareUltralightTag
](
js-apis-nfctech.md#mifareultralighttag9
)
## tag.getMifareUltralight<sup>9+</sup>
获取Mifare Ultralight类型Tag对象,通过该对象可访问Mifare Ultralight技术类型的Tag。
getMifareUltralight(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
MifareUltralightTag
](
js-apis-nfctech.md#mifareultralighttag9
)
**需要权限**
:ohos.permission.NFC_TAG
获取MIFARE Ultralight类型Tag对象,通过该对象可访问支持MIFARE Ultralight技术类型的Tag。
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | ---------------------------------------- |
| taginfo |
[
TagInfo
](
#taginfo
)
| 是 | 包含Tag技术类型和相关参数,从tag.getTagInfo(want: Want)获取。 |
**返回值:**
|
**类型**
|
**说明**
|
| -------------------- | ---------------------------|
|
[
MifareUltralightTag
](
js-apis-nfctech.md#mifareultralighttag9
)
| M
ifare Ultralight类型Tag对象
。 |
|
[
MifareUltralightTag
](
js-apis-nfctech.md#mifareultralighttag9
)
| M
IFARE Ultralight类型Tag对象,通过该对象访问MIFARE Ultralight类型的相关接口
。 |
## tag.getNdefFormatableTag<sup>9+</sup>
**错误码:**
以下错误码的详细介绍请参见
[
NFC错误码
](
../errorcodes/errorcode-nfc.md
)
。
| 错误码ID | 错误信息|
| ------- | -------|
| 3100201 | Tag running state of service is abnormal. |
getNdefFormatableTag(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
NdefFormatableTag
](
js-apis-nfctech.md#ndefformatabletag9
)
## tag.getNdefFormatable<sup>9+</sup>
获取Ndef Formatable类型Tag对象,通过该对象可访问Ndef Formatable技术类型的Tag。
getNdefFormatable(tagInfo:
[
TagInfo
](
#taginfo
)
):
[
NdefFormatableTag
](
js-apis-nfctech.md#ndefformatabletag9
)
**需要权限**
:ohos.permission.NFC_TAG
获取NDEF Formatable类型Tag对象,通过该对象可访问支持NDEF Formatable技术类型的Tag。
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
|
[
NdefFormatableTag
](
js-apis-nfctech.md#ndefformatabletag
)
| Ndef Formatable类型Tag对象。 |
|
[
NdefFormatableTag
](
js-apis-nfctech.md#ndefformatabletag
)
| NDEF Formatable类型Tag对象,通过该对象访问NDEF Formatable类型的相关接口。 |
**错误码:**
以下错误码的详细介绍请参见
[
NFC错误码
](
../errorcodes/errorcode-nfc.md
)
。
| 错误码ID | 错误信息|
| ------- | -------|
| 3100201 | Tag running state of service is abnormal. |
## tag.getTagInfo<sup>9+</sup>
getTagInfo(want:
Want
):
[
TagInfo
](
#taginfo
)
getTagInfo(want:
[
Want
](
js-apis-application-Want.md#Want
)
):
[
TagInfo
](
#taginfo
)
从Want中获取TagInfo,Want是被NFC服务初始化,包含了TagInfo所需的属性值。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------------- | ---- | ---------------------------------------- |
| want |
[
Want
](
js-apis-application-Want.md#Want
)
| 是 | 分发Ability时,在系统onCreate入口函数的参数中获取。 |
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
|
[
TagInfo
](
#taginfo
)
| TagInfo对象,用于获取不同技术类型的Tag对象。 |
...
...
@@ -255,8 +319,6 @@ getTagInfo(want: Want): [TagInfo](#taginfo)
NFC服务在读取到标签时给出的对象,通过改对象属性,应用知道该标签支持哪些技术类型,并使用匹配的技术类型来调用相关接口。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**类型**
|
**说明**
|
...
...
@@ -268,8 +330,6 @@ NFC服务在读取到标签时给出的对象,通过改对象属性,应用
## NdefRecord<sup>9+</sup>
NDEF标签Record属性的定义,参考NDEF标签技术规范《NFCForum-TS-NDEF_1.0》的定义细节。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**类型**
|
**说明**
|
| -------- | -------- | -------- |
...
...
@@ -281,8 +341,6 @@ NDEF标签Record属性的定义,参考NDEF标签技术规范《NFCForum-TS-NDE
## 技术类型定义
NFC Tag有多种不同的技术类型,定义常量描述不同的技术类型。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**常量值**
|
**说明**
|
| -------- | -------- | -------- |
...
...
@@ -292,15 +350,13 @@ NFC Tag有多种不同的技术类型,定义常量描述不同的技术类型
| NFC_F | 4 | NFC-F(JIS 6319-4)技术。|
| NFC_V | 5 | NFC-V(ISO 15693)技术。|
| NDEF | 6 | NDEF技术。|
| MIFARE_CLASSIC | 8 | M
ifare
Classic技术。|
| MIFARE_ULTRALIGHT | 9 | M
ifare
Utralight技术。|
| MIFARE_CLASSIC | 8 | M
IFARE
Classic技术。|
| MIFARE_ULTRALIGHT | 9 | M
IFARE
Utralight技术。|
| NDEF_FORMATABLE
<sup>
9+
</sup>
| 10 | 可以格式化的NDEF技术。|
## TnfType<sup>9+</sup>
NDEF Record的TNF(Type Name Field)类型值,参考NDEF标签技术规范《NFCForum-TS-NDEF_1.0》的定义细节。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**常量值**
|
**说明**
|
| -------- | -------- | -------- |
...
...
@@ -315,8 +371,6 @@ NDEF Record的TNF(Type Name Field)类型值,参考NDEF标签技术规范《NFC
## NDEF Record RTD类型定义
NDEF Record的RTD(Record Type Definition)类型值,参考NDEF标签技术规范《NFCForum-TS-NDEF_1.0》的定义细节。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**常量值**
|
**说明**
|
| -------- | -------- | -------- |
...
...
@@ -326,8 +380,6 @@ NDEF Record的RTD(Record Type Definition)类型值,参考NDEF标签技术规
## NfcForumType<sup>9+</sup>
NFC Forum标准里面Tag类型的定义。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**常量值**
|
**说明**
|
| -------- | -------- | -------- |
...
...
@@ -335,25 +387,21 @@ NFC Forum标准里面Tag类型的定义。
| NFC_FORUM_TYPE_2 | 2 | NFC论坛类型2。 |
| NFC_FORUM_TYPE_3 | 3 | NFC论坛类型3。 |
| NFC_FORUM_TYPE_4 | 4 | NFC论坛类型4。 |
| MIFARE_CLASSIC | 101 | M
ifare
Classic类型。 |
| MIFARE_CLASSIC | 101 | M
IFARE
Classic类型。 |
## MifareClassicType<sup>9+</sup>
MifareClassic标签类型的定义。
**需要权限**
:ohos.permission.NFC_TAG
MIFARE Classic标签类型的定义。
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**常量值**
|
**说明**
|
| -------- | -------- | -------- |
| TYPE_UNKNOWN |
-1 | 未知Mifare
类型。 |
| TYPE_CLASSIC |
0 | Mifare
Classic类型。|
| TYPE_PLUS |
1 | Mifare
Plus类型。|
| TYPE_PRO |
2 | Mifare
Pro类型。 |
| TYPE_UNKNOWN |
0 | 未知MIFARE
类型。 |
| TYPE_CLASSIC |
1 | MIFARE
Classic类型。|
| TYPE_PLUS |
2 | MIFARE
Plus类型。|
| TYPE_PRO |
3 | MIFARE
Pro类型。 |
## MifareClassicSize<sup>9+</sup>
MifareClassic标签存储大小的定义。
**需要权限**
:ohos.permission.NFC_TAG
MIFARE Classic标签存储大小的定义。
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**常量值**
|
**说明**
|
...
...
@@ -363,15 +411,13 @@ MifareClassic标签存储大小的定义。
| MC_SIZE_2K | 2048 | 每个标签32个扇区,每个扇区4个块。 |
| MC_SIZE_4K | 4096 | 每个标签40个扇区,每个扇区4个块。|
### MifareUltralightType<sup>9+</sup>
MifareUltralight标签类型的定义。
**需要权限**
:ohos.permission.NFC_TAG
## MifareUltralightType<sup>9+</sup>
MIFARE Ultralight标签类型的定义。
**系统能力**
:SystemCapability.Communication.NFC.Core
|
**参数名**
|
**常量值**
|
**说明**
|
| -------- | -------- | -------- |
| TYPE_UNKOWN |
-1 | 未知的 Mifare
类型。 |
| TYPE_ULTRALIGHT | 1 | M
ifare
Ultralight类型。|
| TYPE_ULTRALIGHT_C | 2 | M
ifare
UltralightC 类型。 |
| TYPE_UNKOWN |
0 | 未知的 MIFARE
类型。 |
| TYPE_ULTRALIGHT | 1 | M
IFARE
Ultralight类型。|
| TYPE_ULTRALIGHT_C | 2 | M
IFARE
UltralightC 类型。 |
<!--no_check-->
\ No newline at end of file
zh-cn/application-dev/reference/apis/js-apis-nfctech.md
浏览文件 @
a1224011
此差异已折叠。
点击以展开。
zh-cn/application-dev/reference/apis/js-apis-tagSession.md
100755 → 100644
浏览文件 @
a1224011
...
...
@@ -13,64 +13,82 @@ import tag from '@ohos.nfc.tag';
## tagSession
tagSession是所有
[
N
fc tag
技术类型
](
js-apis-nfctech.md
)
的基类, 提供建立连接和发送数据等共同接口。
tagSession是所有
[
N
FC Tag
技术类型
](
js-apis-nfctech.md
)
的基类, 提供建立连接和发送数据等共同接口。
需要通过其子类来访问以下接口。在下面的示例中 统一用 getXX
Tag
表示获取子类实例的方法。
需要通过其子类来访问以下接口。在下面的示例中 统一用 getXX
X()
表示获取子类实例的方法。
具体使用时,请根据实际采用的Nfc tag技术,选择对应的方法,具体请参见
[
nfcTag
](
js-apis-nfcTag.md
)
文档。
### tagSession.connectTag
connectTag(): boolean;
### tagSession.getTagInfo
和标签建立连接;
getTagInfo(): tag.TagInfo
在从标签读取数据或将数据写入标签之前,必须调用此方法
。
获取该Tag被分发时,NFC服务所提供的Tag数据对象
。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
|
boolean | 连接建立成功返回 true,失败返回false
。 |
|
TagInfo | NFC服务所提供的Tag数据对象
。 |
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// tagInfo is an Object given by nfc service when tag is dispatched.
let
isNfcConnected
=
tag
.
getXXXTag
(
taginfo
).
connectTag
();
console
.
log
(
"
isNfcConnected:
"
+
isNfcConnected
);
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
let
tagInfo
=
tag
.
getXXX
(
tagInfo
).
getTagInfo
();
console
.
log
(
"
tag tagInfo:
"
+
tagInfo
);
```
### tagSession.
reset()
### tagSession.
connectTag
reset(): void
connectTag(): boolean;
重置与标签的连接,并恢复将数据写入标签的默认超时时间
。
和标签建立连接。在从标签读取数据或将数据写入标签之前,必须调用此方法
。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
| boolean |
方法执行成功返回
true,失败返回false。 |
| boolean |
连接建立成功返回
true,失败返回false。 |
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
let
connectStatus
=
tag
.
getXXX
(
tagInfo
).
connectTag
();
console
.
log
(
"
connectStatus:
"
+
connectStatus
);
```
### tagSession.reset()
reset(): void
重置与标签的连接。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// tagInfo is an Object given by nfc service when tag is dispatched.
let
reset
=
tag
.
getXXXTag
(
taginfo
).
reset
();
console
.
log
(
"
reset:
"
+
reset
);
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
tag
.
getXXX
(
tagInfo
).
reset
();
```
### tagSession.isTagConnected
...
...
@@ -84,19 +102,19 @@ isTagConnected(): boolean
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
| boolean | 已建立连接返回 true,未建立连接返回false。 |
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// tagInfo is an Object given by nfc service when tag is dispatched.
let
isTagConnected
=
tag
.
getXXXTag
(
taginfo
).
isTagConnected
();
console
.
log
(
"
isTagConnected:
"
+
isTagConnected
);
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
let
isTagConnected
=
tag
.
getXXX
(
tagInfo
).
isTagConnected
();
console
.
log
(
"
isTagConnected:
"
+
isTagConnected
);
```
### tagSession.getMaxSendLength
...
...
@@ -110,17 +128,160 @@ getMaxSendLength(): number
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
| number | 可以发送到标签的最大数据长度,非负数。 |
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
let
maxSendLen
=
tag
.
getXXX
(
tagInfo
).
getMaxSendLength
();
console
.
log
(
"
tag maxSendLen:
"
+
maxSendLen
);
```
### tagSession.getSendDataTimeout
getSendDataTimeout(): number
查询发送数据到Tag的等待超时时间,单位是毫秒。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
| number |
可以发送到标签的最大数据长度
。 |
| number |
发送数据到Tag的等待超时时间,单位是毫秒,非负数
。 |
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
let
sendDataTimeout
=
tag
.
getXXX
(
tagInfo
).
getSendDataTimeout
();
console
.
log
(
"
tag sendDataTimeout:
"
+
sendDataTimeout
);
```
### tagSession.setSendDataTimeout
setSendDataTimeout(timeout: number): boolean
查询发送数据到Tag的等待超时时间,单位是毫秒。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------- | ---- | -------------------------------------- |
| timeout | number | 是 | 超时时间,单位毫秒,非负值。 |
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
| boolean | 设置超时时间成功返回true,设置失败返回false。 |
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
let
timeoutMs
=
700
;
// change it to be correct.
let
setStatus
=
tag
.
getXXX
(
tagInfo
).
setSendDataTimeout
(
timeoutMs
);
console
.
log
(
"
tag setSendDataTimeout setStatus:
"
+
setStatus
);
```
### tagSession.sendData
sendData(data: number[]): Promise
<number
[]
>
发送指令到Tag上,使用Promise方式作为异步方法。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------- | ---- | -------------------------------------- |
| data | number[] | 是 | 要发送的指令。每个number十六进制表示,范围是0x00~0xFF。 |
**返回值:**
|
**类型**
|
**说明**
|
| ------------------ | --------------------------|
| Promise
<number
[]
>
| 对端Tag对指令的响应数据。每个number十六进制表示,范围是0x00~0xFF。|
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
// connect the tag at first if not connected.
if
(
!
tag
.
getXXX
(
tagInfo
).
isTagConnected
())
{
if
(
!
tag
.
getXXX
(
tagInfo
).
connectTag
())
{
console
.
log
(
"
tagSession connectTag failed.
"
);
return
;
}
}
let
cmdData
=
[
0x01
,
0x02
,
...];
// change the raw data to be correct.
tag
.
getXXX
(
tagInfo
).
sendData
(
cmdData
).
then
((
response
)
=>
{
console
.
log
(
"
tagSession sendData Promise response:
"
+
response
);
}).
catch
((
err
)
=>
{
console
.
log
(
"
tagSession sendData Promise err:
"
+
err
);
});
```
### tagSession.sendData
sendData(data: number[], callback: AsyncCallback
<number
[]
>
): void
发送指令到Tag上,使用AsyncCallback方式作为异步方法。
**需要权限**
:ohos.permission.NFC_TAG
**系统能力**
:SystemCapability.Communication.NFC
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------- | ---- | -------------------------------------- |
| data | number[] | 是 | 要发送的指令。每个number十六进制表示,范围是0x00~0xFF。 |
| callback | AsyncCallback
<number
[]
>
| 是 | 回调函数,返回响应数据。每个number十六进制表示,范围是0x00~0xFF。 |
**示例:**
```
js
import
tag
from
'
@ohos.nfc.tag
'
;
// tagInfo is an Object given by nfc service when tag is dispatched.
let
mazSendLen
=
tag
.
getXXXTag
(
taginfo
).
getMaxSendLength
();
console
.
log
(
"
mazSendLen:
"
+
mazSendLen
);
// see 'tag.TagInfo' at 'js-apis-nfcTag.md', tagInfo is an Object given by nfc service when tag is dispatched.
// the folowing getXXX, can be one of getIsoDep, getNdef, getMifareClassic, ...
// connect the tag at first if not connected.
if
(
!
tag
.
getXXX
(
tagInfo
).
isTagConnected
())
{
if
(
!
tag
.
getXXX
(
tagInfo
).
connectTag
())
{
console
.
log
(
"
tagSession connectTag failed.
"
);
return
;
}
}
let
cmdData
=
[
0x01
,
0x02
,
...];
// change the raw data to be correct.
tag
.
getXXX
(
tagInfo
).
sendData
(
cmdData
,
(
err
,
response
)
=>
{
if
(
err
)
{
console
.
log
(
"
tagSession sendData AsyncCallback err:
"
+
err
);
}
else
{
console
.
log
(
"
tagSession sendData AsyncCallback response:
"
+
response
);
}
});
```
zh-cn/application-dev/reference/errorcodes/errorcode-nfc.md
0 → 100644
浏览文件 @
a1224011
# NFC错误码
## 3100101
**错误信息**
NFC opening or closing state is abnormal in service.
**错误描述**
NFC服务内部执行NFC打开或关闭异常。
**可能原因**
和NFC服务建立通信异常。
**处理步骤**
重新执行打开或关闭NFC。
## 3100201
**错误信息**
Tag running state is abnormal in service.
**错误描述**
NFC服务执行Tag业务逻辑遇到错误。
**可能原因**
1.
Tag参数值和实际调用函数要求不匹配。
2.
Tag操作时,NFC状态是关闭的。
3.
Tag操作前,已经处在断开状态。
4.
Tag芯片返回错误状态或响应超时。
5.
和NFC服务没有建立绑定关系,无法调用接口。
**处理步骤**
1.
检查NFC参数是否和所调用接口匹配。
2.
打开设备NFC。
3.
先调用连接,再执行读写操作。
4.
重新触碰读取卡片。
5.
退出应用后,重新读取卡片。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录