この記事を見るまで、HCE-FがAndroid7から搭載されたことをまったく知らなかった。
第772回:HCE-Fとは - ケータイ Watch
APIはこれだろう。
NfcFCardEmulation | Android Developers
- getNfcidForService()
- getSystemCodeForService()
- registerSystemCodeForService()
- setNfcid2ForService()
- unregisterSystemCodeForService()
名前がくどいな。。
まあ、CardEmulationクラスも同じような名前を付けているから、ルールに沿っただけか。
HCE-Fをサポートする機種でしか使えないのだが、どこで分かれるのだろう?
まず、NFCが載っていて、NfcFをサポートしているのは必須だろう。
NFC Forumとしては、A,B,FのRead/Writeについてはサポートしないといかんのだが、Androidにそこまでの義理はないから、A,BはあってFがないという可能性もなくはないだろう。
ただ、NFCチップはどれも対応していそうな気がするので、ドライバ次第なのか。
NFCチップも、Reader/Writer系のチップと、Emulation系のチップがあるはずだ。
RC-S956やPN532なんかは前者で、PN65NやPN544は後者だ。
Reader/Writer系のチップは買いやすいのだが、Emualtor系のチップは普通の人は買えないんじゃなかろうか。
携帯電話に載せるのはEmulator系のチップになるので、私もよく知らない。
FeliCa Liteや、FeliCaでも暗号化されていないところを読み書きする分には、Read without EncryptionやWrite without Encryptionを使う。
そうじゃない場合は、ReadとWriteを使う。
このReadとWrite、あとは認証系のコマンドもあると思うが、この辺りが使えるかどうかで分かれるんじゃなかろうか。
コマンドの詳細は、18092はどうだったか忘れたが、JISには載ってたと思う。
このReadやWriteを使わないと、無線の間が暗号化されないのだ。
暗号化されないと、データを読めば何をしているのかわかってしまうから、安全でない。
だから、HCE-Fをやるとなれば、それもサポートしないといかんのじゃなかろうかね。
試してみたいのだが、うちのNexus5はAndroid7が載らないのだ。。
XDAでビルドしているという話は聞くのだが、それでHCE-Fがサポートされるのかどうかとなると、されないような気がするのよね。。。
0 件のコメント:
コメントを投稿
コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。
注: コメントを投稿できるのは、このブログのメンバーだけです。