10年积累的网站设计、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有江干免费网站建设让你可以放心的选择与我们合作。
应用或其他模块可以通过接口访问多种协议或技术的Tag卡片。
类名 | 接口名 | 功能描述 |
---|---|---|
TagInfo | getTagId() | 获取当前 Tag 的 ID。 |
getTagSupportedProfiles() | 获取当前 Tag 支持的协议或技术。 | |
isProfileSupported(int profile) | 判断 Tag 是否支持指定的协议或技术。 | |
TagManager | getTagInfo() | 获取标签信息。 |
connectTag() | 建立与 Tag 设备的连接。 | |
reset() | 重置与 Tag 设备的连接,同时会把写 Tag 的超时时间恢复为默认值。 | |
isTagConnected() | 判断与 Tag 设备是否保持连接。 | |
setSendDataTimeout(int timeout) | 设置发送数据到 Tag 的超时时间,单位是 ms。 | |
getSendDataTimeout() | 查询发送数据到 Tag 设备的超时时间,单位是 ms。 | |
sendData(byte[] data) | 写数据到 Tag 设备中。 | |
checkConnected() | 检查 Tag 设备是否已连接。 | |
getMaxSendLength() | 获取发送数据的最大长度。在发送数据到 Tag 设备时,用于查询最大可发送数据的长度。 | |
IsoDepTag | IsoDepTag(TagInfo tagInfo) | 根据分发 Tag信息获取 IsoDep 类型 Tag 标签对象。 |
getHiLayerResponse() | 获取基于 NfcB 技术的 IsoDep 类型 Tag 的高层响应内容。 | |
getHistoricalBytes() | 获取基于 NfcA 技术的 IsoDep 类型 Tag 的历史字节内容。 | |
NfcATag | getInstance(TagInfo tagInfo) | 根据分发 Tag 信息获取 NfcA 标签对象。 |
getSak() | 获取 NfcA 类型 Tag 的 SAK。 | |
getAtqa() | 获取 NfcA 类型 Tag 的 ATQA。 | |
NfcBTag | getInstance(TagInfo tagInfo) | 根据分发 Tag 信息获取 NfcB 标签对象。 |
getRespAppData() | 获取 NfcB 标签对象的应用数据。 | |
getRespProtocol() | 获取 NfcB 标签对象的协议信息。 | |
NdefTag | getNdefMessage() | 获取当前连接的 NDEF Tag 设备的 NDEF 信息。 |
getNdefMaxSize() | 获取最大的 NDEF 信息尺寸。 | |
getTagType() | 获取 NDEF Tag 设备类型。 | |
readNdefMessage() | 从当前连接的 NDEF Tag 设备读取 NDEF 信息。 | |
writeNdefMessage(NdefMessage msg) | 写 NDEF 信息到当前连接的 NDEF Tag 设备。 | |
canSetReadOnly() | 检查 NDEF Tag 设备是否可被设置为只读。 | |
setReadOnly() | 设置 NDEF Tag 设备为只读。 | |
isNdefWritable() | 判断 NDEF Tag 设备是否可写。 | |
MifareClassicTag | getInstance(TagInfo tagInfo) | 根据分发 Tag 信息获取 MifareClassic 标签对象。 |
getMifareType() | 获取 MifareClassic Tag 设备的 Mifare 类型。 | |
getTagSize() | 获取 MifareClassic Tag 设备的尺寸。 | |
getSectorsNum() | 获取 MifareClassic Tag 设备内所有扇区数。 | |
getBlocksNum() | 获取 MifareClassic Tag 设备内所有块数。 | |
getBlocksNumForSector(int sectorId) | 获取 MifareClassic Tag 设备内一个扇区的块数。 | |
getSectorId(int blockId) | 用块ID获取 MifareClassic Tag 设备内扇区号。 | |
getFirstBlockId(int sectorId) | 获取 MifareClassic Tag 设备内特定扇区的第一个块 ID。 | |
authenSectorUseKey(int sectorId, byte[] key, byte keyType) | 用密钥鉴权 MifareClassic Tag 设备内特定扇区。 | |
readBlock(int blockId) | 读取 MifareClassic Tag 设备内特定块内容。 | |
writeBlock(int blockId, byte[] data) | 在 MifareClassic Tag 设备内特定块写内容。 | |
incBlock(int blockId, int value) | 在 MifareClassic Tag 设备内特定块的内容加上一个值。 | |
decBlock(int blockId, int value) | 从 MifareClassic Tag 设备内特定块的内容减去一个值。 | |
restoreBlock(int blockId) | 把 MifareClassic Tag 设备内特定块的内容移动到一个内部的缓存区。 | |
MifareUltralightTag | getInstance(TagInfo tagInfo) | 根据分发 Tag 信息获取 MifareUltralight 标签对象。 |
getMifareType() | 获取 MifareUltralight Tag 设备类型。 | |
readFourPages(int pageOffset) | 从 MifareUltralight Tag 设备的特定页数开始读四页。 | |
writeOnePage(int pageOffset, byte[] data) | 在 MifareUltralight Tag 设备的特定页数写数据。 |
// 从Intent中获取TagInfo,初始化TagInfo实例
TagInfo tagInfo = getIntent().getParcelableExtra(NfcController.EXTRA_TAG_INFO);
// 查询Tag设备支持的技术或协议,返回值为支持的技术或协议列表
int[] profiles = tagInfo.getTagSupportedProfiles();
// 查询是否支持NfcA,若支持,构造一个NfcATag
boolean isSupportedNfcA = tagInfo.isProfileSupported(TagManager.NFC_A);
if (isSupportedNfcA) {
NfcATag tagNfcA = NfcATag.getInstance(tagInfo);
}
// 查询是否支持NfcB,若支持,构造一个NfcBTag
boolean isSupportedNfcB = tagInfo.isProfileSupported(TagManager.NFC_B);
if (isSupportedNfcB) {
NfcBTag tagNfcB = NfcBTag.getInstance(tagInfo);
}
// 查询是否支持IsoDep,若支持,构造一个IsoDepTag
boolean isSupportedIsoDep = tagInfo.isProfileSupported(TagManager.ISO_DEP);
if (isSupportedIsoDep) {
IsoDepTag tagIsoDep = new IsoDepTag(tagInfo);
}
// 查询是否支持NDEF,若支持,构造一个NdefTag
boolean isSupportedNdefDep = tagInfo.isProfileSupported(TagManager.NDEF);
if (isSupportedNdefDep) {
NdefTag tagNdef = new NdefTag(tagInfo);
}
// 查询是否支持MifareClassic,若支持,构造一个MifareClassicTag
boolean isSupportedMifareClassic = tagInfo.isProfileSupported(TagManager.MIFARE_CLASSIC);
if (isSupportedMifareClassic) {
MifareClassicTag mifareClassicTag = MifareClassicTag.getInstance(tagInfo);
}
// 查询是否支持MifareUltralight,若支持,构造一个MifareUltralightTag
boolean isSupportedMifareUltralight = tagInfo.isProfileSupported(TagManager.MIFARE_ULTRALIGHT);
if (isSupportedMifareUltralight) {
MifareUltralightTag mifareUltralightTag = MifareUltralightTag.getInstance(tagInfo);
}
// 连接 Tag 设备,返回值为是否连接成功
boolean connSuccess = tagNfcA.connectTag();
// 查询Tag连接状态
boolean isConnected= tagNfcA.isTagConnected();
// 发送数据到Tag,返回值为Tag的响应数据
byte[] data = {0x13, 0x59, 0x22};
byte[] response = tagNfcA.sendData(data);
// 连接Tag设备,返回值为是否连接成功
boolean connSuccess = tagNfcB.connectTag();
// 查询Tag连接状态
boolean isConnected= tagNfcB.isTagConnected();
// 发送数据到Tag,返回值为Tag的响应数据
byte[] data = {0x13, 0x59, 0x22};
byte[] response = tagNfcB.sendData(data);
// 连接Tag设备,返回值为是否连接成功
boolean connSuccess = tagIsoDep.connectTag();
// 查询Tag连接状态
boolean isConnected= tagIsoDep.isTagConnected();
// 发送数据到Tag,返回值为Tag的响应数据
byte[] data = {0x13, 0x59, 0x22};
byte[] response = tagIsoDep.sendData(data);
// 连接Tag设备,返回值为是否连接成功
boolean connSuccess = tagNdef.connectTag();
// 查询Tag连接状态
boolean isConnected = tagNdef.isTagConnected();
// 发送数据到Tag,返回值为Tag的响应数据
byte[] data = {0x13, 0x59, 0x22};
byte[] response = tagNdef.sendData(data);
// 连接Tag设备,返回值为是否连接成功
boolean connSuccess = mifareClassicTag.connectTag();
// 查询Tag连接状态
boolean isConnected = mifareClassicTag.isTagConnected();
// 发送数据到Tag,返回值为Tag的响应数据
byte[] data = {0x13, 0x59, 0x22};
byte[] response = mifareClassicTag.sendData(data);
// 连接Tag设备,返回值为是否连接成功
boolean connSuccess = mifareUltralightTag.connectTag();
// 查询Tag连接状态
boolean isConnected = mifareUltralightTag.isTagConnected();
// 发送数据到Tag,返回值为Tag的响应数据
byte[] data = {0x13, 0x59, 0x22};
byte[] response = mifareUltralightTag.sendData(data);
本文标题:创新互联鸿蒙OS教程:鸿蒙OSTag读写
分享路径:http://www.shufengxianlan.com/qtweb/news8/120808.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联