0

NFC を使用して、RFID タグを使用してユーザーを識別するアプリを構築しています。タグは正しく読めますので問題ありません。ただし、「NFC TagInfo」アプリを使用すると、Type V タグから次の ID を受け取りました。

e00401007539c2d3

自分でタグを読むと、UID は完全に逆になっています。

d3c23975000104e0

タイプ V タグの RF テクノロジーは、タイプV (ISO/IEC 15693 / 周辺)です。他のタグ ( Type A (ISO/IEC 14443 Type A ) は正常に動作するため、コードに問題はないようです。これが を に変換する方法byte[]ですString

public static String tagFromByte(byte[] __tagId) {
    String tagId = "";

    for (byte b: __tagId) {
        tagId += String.format("%02x", b);
    }

    return tagId;
}

ドキュメントによると:

ID のサイズと形式は、タグで使用される RF テクノロジに固有です。

特定のテクノロジの UID を読み取る方法についての詳細を検索しようとしましたが、何も見つかりませんでした。

ここで更新を見つけました。ドキュメントに従っています。byte[]-to-stringしかし、それは、適切な UID実装をトリガーするために使用されるタグの RF テクノロジーをどのように取得するかという問題につながります。

4

2 に答える 2

0

0 から 7 までのタグをログに記録していますが、その逆である必要があります。

このtagId[0]バイトは最下位バイトであるため、最後に配置されます。

次のようにログに記録します。

for (int i = _tagId.length(); i > 0; --i) {
    tagId += String.format("%02x", _tagId[i]);
}
于 2013-11-12T13:56:17.017 に答える