わからんシリーズだ。
うちには、Nexus7 2013(5.0α?)と、Nexus7 2012(4.4.4)がある。
FeliCa Liteをかざして見るのだが、なぜかシステムコードが取れない。
しかも、4.4.4(API 19)の方だけ。
why ?
(Tag)intent.getParcelableExtra(NfcAdapter.EXTRA_TAG)
こんなのでTagを取ってきて、
NfcF nfcf = NfcF.get(tag);
こんな感じでNfcFを取ってくる。
そうすると、中の方で
/** @hide */
public NfcF(Tag tag) throws RemoteException {super(tag, TagTechnology.NFC_F);
Bundle extras = tag.getTechExtras(TagTechnology.NFC_F);if (extras != null) {mSystemCode = extras.getByteArray(EXTRA_SC);mManufacturer = extras.getByteArray(EXTRA_PMM);}}
こんなのが行われて、mSystemCodeにデータが入ってくる。
・・・のだが、そこで0が入った配列が渡されてくるので、システムコードが取って来れないのだ。
ちなみに、IDmもだめだった。
こっちは、0x00じゃなくて、ちょっとゴミっぽい。
不思議なことに、NfcFはそうなんだけど、元になっているTagの方にはIDmもシステムコードも入っていた。
だから、Intentから取ってくればいけるのかもしれん(試してない)。
が、せっかくNfcF#getSystemCode()ってのがあるのに使えないのは、なんか変だ。
うーん、わからん。
0 件のコメント:
コメントを投稿
コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。
注: コメントを投稿できるのは、このブログのメンバーだけです。