https://github.com/hirokuma/NfcPcd
私にしてはがんばって作った、PaSoRiをAndroid 3.1以上で使うためのライブラリ。
ちょいと説明をしておこう(といいつつ、「1」なんて書いてしまった)。
もしかすると、使ってくれる人がいるかもしれんし・・・。
私が知らないライブラリを使うときに知りたいのは、どのくらい何をせんと動かないの?だ。
https://github.com/hirokuma/NfcPcd/blob/master/sample/src/com/nfcpcdsample/MainActivity.java
ソースファイルとしては、これくらい書けばとりあえず動く。
このソースは、ボタンを押すとNFC-Fとしてポーリングして、それでだめならFeliCaとしてポーリングして、それでもだめならNFC-Aとしてポーリングする、ということをやっている。
ポーリングするとIDmなりUIDなりが取得できるので、それを出力した後、搬送波を停止させている。
Android3.1以上にある「USB Host」機能を使っているが、そこはcom.blogpost.hiro99ma.pcd.UsbHostというクラスに処理をまとめて、あまり手間がかからないんじゃないかな、と思うようにしている。
なので、USB挿抜に関するListenerをimplementsせんといかん。
挿入は、実は通知がないみたいだ。
com.blogpost.hiro99ma.pcd.UsbHostでやっているのは、インテントフィルターの登録などだ。
もう少し融通が利いた方がいいのかもしれんが、よくわかってない。
とりあえず動かしてみよう、であれば簡単だと思うが、どうだろうねぇ。
すごいですね。
返信削除やっている人はやっている、と。
参考になります。
コメントありがとうございます!
返信削除FeliCa Liteは結構素直なつくりになっているので、いくつかわかってしまえば案外と楽でしたよ。
USB Hostみたいな、プラットフォームに依存するところは苦手ですが・・・そこは人からもらうなどして逃げてます。
ここまではできるけど、アプリにまで昇華できないんですよね・・・。
目下の悩みです。
初心者で申し訳ないのですがご教授頂けると助かります。
返信削除NfcPcdライブラリのsampleをAndroid Studioにimportして
buildしようとしているのですが、
implements com.blogpost.hiro99ma.pcd.UsbHost.UsbListener が
”no enclosing instance of type 'com.blogpost.hiro99ma.pcd.UsbHost' is in scope”
となってしまいます。
なにか対策はありますでしょうか?
こちらの環境は
Android Studio V1.2.2
JDK 1.7.0 です。
作ったのが4年ほど前なので、今だと動かなくなっているのかもしれません。
削除確認しますので、少々お時間ください。
AndroidStudio自体がよくわからず、うまいこと解決できなかったので、もうライブラリ化するのはやめて、全部アップしました。
削除Eclipse形式にするのが面倒だったので、AndroidStudio用に新しくリポジトリを作りました。
申し訳ありませんが、こちらで試していただけますか。
git@github.com:hirokuma/NfcPcdStudio.git
お手数をお掛けして申し訳ありません。
返信削除ご対応に感謝です。
アップ頂いたリポジトリで挑戦してみます。
成果がありましたらフィードバックいたします。