2

Android デバイスの NFC スタック (またはチップセット) を把握する方法はありますか? NfcV クラス (ISO15693 タグ) のカスタム実装を使用してアプリを作成しています。Nexus S、Galaxy S2、Nexus 7 などの古いデバイスでは、NFC チップセットは NXP のものであり、サポートされている ISO15693 タグは NXP ICODE タグのみです。送受信機能に依存するカスタム実装があります。TI および ST Micro タグで美しく機能します。しかし問題は、Nexus 10、Nexus 4、SGS4 などのデバイスで、Google が Broadcom NFC トランシーバーと、ISO15693 タグをネイティブでサポートする NFC スタックの使用を開始したことです。プログラムで NFC チップセットを識別することは可能ですか? もしそうなら、どのように?

4

3 に答える 3

1

NXP NFC ベースのデバイスはすべてMifareClassicタグをサポートしていますが、Broadcom ベースのデバイスにはこのサポートがありません。https://stackoverflow.com/a/15833191/1202968で説明されているように、そのサポートが存在するかどうかをアプリで確認できます。

「サポートされている唯一の ISO15693 タグは NXP ICODE タグです」と書くとき、ISO15693 タグでの NDEF メッセージの読み取りと書き込みは、そのようなデバイスの NXP ICODE タグでのみサポートされていることを意味していると思います (通信は ISO 15693 コマンドを使用して正常に機能するため)これらの NXP ベースの NFC デバイスで)。これらのデバイスが他の ISO15693 タグの NDEF メッセージ ストレージもサポートするように更新された場合 (あるとしても)、MifareClassicサポートを確認するトリックは機能しなくなります。明らかに...

于 2013-07-04T15:44:24.130 に答える
0

ここで推測しますが、次のようなすべての技術フィルターをキャッチすることができます

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <tech-list>    
       <tech>android.nfc.tech.NfcA</tech>       
    </tech-list>
</resources>

Broadcom チップでサポートされていない、私が試したほとんどのカードを読み取ります。その後、空またはヌルの NdefMessage をチェックできます。情報が含まれている場合、それは NXP チップです。それ以外の場合は、Broadcom です。

これは非常に狭いフィルターを持つという概念を破りますが、それ以外の方法でそれを行う方法はわかりません.

カスタム Samsung ファームウェアは互換性のないタグを無視するだけなので、これも s4 では機能しない可能性があります。

タグをスキャンすると、正確な技術リスト (互換性のあるすべてのもの) が logcat に表示されるため、別の方法もあるかもしれません。

于 2013-07-02T15:41:29.240 に答える