2012年4月27日金曜日

NdefFormatable にならない!

ハニービードロイド
Galaxy Nexus を買ってから、
NFCカードへの書き込みをしていなかったので
購入したての MIFARE ClassicMIFARE Ultralight
Androidアプリから書き込みをしようとしてみたら、
NDEFフォーマットでのデータ書き込みができない・・・。
(ちなみに ISO/IEC 15693 のカードは書き込み可能だ)

はて・・・・。

仕事で、GingerbreadベースのAndroidで書き込んだ実績があったので、
手順に間違いはないはず・・・。

ログを見ると

D/NfcService(11301): TAG: Tech [android.nfc.tech.MifareClassic, android.nfc.tech.NfcA]

と出ている。

あれ・・ android.nfc.tech.NdefFormatable がない・・・。
おかしい・・・。



色々と検索してみると、Ice Cream Sandwitch にバグがあるようだった。

  Issue 22258: ICS: NFC - MifareClassic and MifareUltralight no longer reporting NdefFormatable in tech list
  http://code.google.com/p/android/issues/detail?id=22258


手元にある Galaxy Nexus は Android 4.0.2
どうやらドンピシャにバグに引っかかったようだ・・・。



さらに調べていくと NFC TagWriter by NXP は、このバグに対応して
どうにか書き込みをしてくれるようだ。

  NFC TagWriter by NXP
  https://play.google.com/store/apps/details?id=com.nxp.nfc.tagwriter&hl=ja



試して見たところ、無事書き込みはでき、ログも変化した。

D/NfcService(11301): TAG: Tech [android.nfc.tech.MifareClassic, android.nfc.tech.NfcA, 
android.nfc.tech.Ndef]


購入したての生タグMIFAREカードを持っている人は、気をつけて下さいな。
ちなみにバグは Android 4.0.3 で治るそうです。

0 件のコメント:

コメントを投稿