gpt4 book ai didi

android - 获取 NFC 标签序列号

转载 作者:行者123 更新时间:2023-12-05 00:12:51 24 4
gpt4 key购买 nike

这是我使用 NFC 的第一个项目。我只想获取 NFC 标签的 ID。我一直在关注这个 post 的回复.这是代码:

public void onResume() {
super.onResume();

if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(getIntent().getAction())) {

Toast.makeText(this,"NFC on resume working",Toast.LENGTH_LONG).show();
byte[] tagId = getIntent().getByteArrayExtra(NfcAdapter.EXTRA_ID);
Log.i("EHEHEHEHEHE",tagId + "");
}
//process the msgs array
}

这是代码的响应:

07-06 22:07:29.804  16729-16729/za.co.bookbay.nfcplay I/EHEHEHEHEHE﹕ [B@423a1e18
07-06 22:08:08.644 16729-16729/za.co.bookbay.nfcplay I/EHEHEHEHEHE﹕ [B@423bfde0
07-06 22:08:09.574 16729-16729/za.co.bookbay.nfcplay I/EHEHEHEHEHE﹕ [B@423d6ec8

现在这个数字一直在变化,因此这让我相信上面的代码没有得到标签的序列号或者这是正确的。如果是这样,数字变化的原因是什么?

最佳答案

您正在打印 byte[] 对象,而不是它的内容。这就是为什么您在输出中得到 [B@SomeAddress。

要打印 id,你可以使用这样的东西:

String hexdump = new String();
for (int i = 0; i < tagId.length; i++) {
String x = Integer.toHexString(((int) tagId[i] & 0xff));
if (x.length() == 1) {
x = '0' + x;
}
hexdump += x + ' ';
}
Log.i("EHEHEHEHEHE",hexdump);

(可能有更好的方法将字节数组转换为 hexdump 字符串,java 不是我最喜欢的编程语言)

关于android - 获取 NFC 标签序列号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31255159/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com