我有一个小项目要将数据写入Ntag 213、215和216。
我成功地使用MifareUltraLight方法写入数据。问题是当我使用 NfcTools 扫描时,数据格式与我预期的不同。
这是我期望的格式。
这是我得到的格式。
我希望当Ntag扫描时,如果没有安装应用程序,它会打开浏览器。
我使用Mi的方法,因为N标签将受密码保护。我尝试了两种不同的方式来写入数据。
>
我使用命令N瘤手动处理写入功能。你可以看到下面的代码
fun writePages(msg: String, mifare: MifareUltralight) {
val uriString = Uri.parse(msg).normalizeScheme().toString()
val subsUri = Uri.parse(msg).host.toString()
val encodedPayload2 = uriString.toByteArray()
val encodedData = byteArrayOf(0xD1.toByte(), 0x01.toByte(), (subsUri.length).toByte(), 0x55.toByte()) + encodedPayload2
val tlvEncodedData = byteArrayOf(0x03.toByte(), encodedData.size.toByte()) + encodedData + byteArrayOf(0xFE.toByte())
var currentPage = 4
for (i in tlvEncodedData.indices step 4) {
var currentBlock = i + 4
if (currentBlock > tlvEncodedData.size) {
currentBlock = tlvEncodedData.size
}
val data = tlvEncodedData.sliceArray(i until currentBlock)
var command = byteArrayOf(0xA2.toByte(), currentPage.toByte()) + data
if (command.size < 6) {
for (w in command.size until 6) {
command += 0.toByte()
}
}
mifare.transceive(command)
currentPage += 1
}
}
我尝试使用这个简单的项目写入数据。但结果是一样的。
我的问题是,我是否使用了错误的方法写入数据或我错过的东西?
NTAG213是错误的标记:您必须购买< code>MifareUltralight标记才能使用该类...https://www . MIFARE . net/WP-content/uploads/2022/05/NXP-RFIDNFC-Portfolio _ May-9-2022 . pdf < br >另请参阅:如何在MIFARE Ultralight EV1标签上设置和取消设置密码?
是的,您使用了错误的方法编写,Ntag213不是Ultralight C标签(尽管对于某些基本内容,它们确实共享类似的命令)
因为您希望Android操作系统自动启动URL,所以Ndef消息中的第一个Ndef记录必须是正确类型的Ndef消息。
在Android上,您不需要自己对Ndef记录和Ndef消息进行编码,也不需要在您尝试使用的协议级别写入Tag,因为Ntag21x系列完全兼容Type 2,您可以使用Ndef类写入它
可以在 https://stackoverflow.com/a/70943157/2373819 中看到一个例子
注意 在本例中,您需要处理格式化和未格式化的标记
也是编写 Ndef 消息的另一个示例 https://stackoverflow.com/a/64921434/2373819
要创建正确类型的Ndef消息和记录,您可以使用NdefRecord.createUri
我正在使用此作为参考向pdf添加视觉签名-https://stackoverflow.com/a/27940667/7103795 我能正确地打印细节。但pdf在Acrobat中打开时不会显示绿色勾号,尽管它写着“已签名且所有签名均有效”在签名面板中。 这是我需要的一个例子: 我怎样才能确保有效期标志出现? 我使用的是pdfBox 2.0.1版
GetResult get(GetRequest request) 功能 获取某个表的某一行记录,可以返回所有属性或者部分属性 消耗一个单位读配额 方法参数 request : GetRequest : required GetRequest包括以下部分 1.tableName : String : required 指定要读哪一张表 2.keys : Map< String, Datum > :
如何将NDEF消息写入NFC标记?我必须更改清单文件吗?到目前为止,我有生成NDEF消息的代码: 如何发现标签?有人能帮我吗?
Vim支持书签功能。 使用这个功能,可以更快地在文件中导航。 在本章中,将讨论以下主体内容 - 创建书签 跳转到书签 列出所有书签 删除书签 局部书签 全局书签 1. 创建书签 要创建书签执行以下命令 - 在上面的示例中,书签名称是单个字母字符。例如,下面的命令创建名称的书签。 2. 跳转到书签 当创建了书签以后,就可以跳到书签那里。 以下命令可用于跳转到指定书签 - 编号 命令 描述 1 `{b
Android Studio 书签是什么? 在Android Studio中的书签是指对代码的标记,标记我们阅读的位置.。给代码加上书签, 就可以快速的在不同的书签中切换。 标记书签 前提条件: 光标放到需要标记的位置 操作步骤: 菜单栏: Navigate —> Bookmarks —> Toggle Bookmark 快捷键: Mac: Fn + F3 Windows\/Linux: F11