2013-03-15 30 views
10

私は思っていたことをやってみることはかなりシンプルですが、そうではないとわかります。私はACR122 NFCリーダーとMifare ClassicとMifare Ultralightタグを持っています。私がしたいのは、Javaアプリケーションから各カードにMIMEタイプと短いテキスト文字列を読み書きするだけです。私は私の読者に接続して、私は私ができるのMifareクラシックタグのリーダー NFCツールを使用したNFC、NDEFアプリケーションの作成

  • 上にあるタグの種類を検出することができます
  • タグを聞くことができます

    • :ここでは、これまで取り組んで、私が持っているものです(携帯電話からタグをプログラミングした後で)タグのすべてのデータをループし、ASCII文字列を作成しますが、ほとんどのデータは「迷惑メール」データです。
    • アプリケーションディレクトリがタグ。

    ここでそれを行うための私のコードです:

    メイン:

    public static void main(String[] args){ 
         TerminalFactory factory = TerminalFactory.getDefault(); 
         List<CardTerminal> terminals; 
         try{ 
          TerminalHandler handler = new TerminalHandler(); 
          terminals = factory.terminals().list(); 
          CardTerminal cardTerminal = terminals.get(0); 
          AcsTerminal terminal = new AcsTerminal(); 
          terminal.setCardTerminal(cardTerminal); 
          handler.addTerminal(terminal); 
          NfcAdapter adapter = new NfcAdapter(handler.getAvailableTerminal(), TerminalMode.INITIATOR); 
          adapter.registerTagListener(new CustomNDEFListener()); 
          adapter.startListening(); 
          System.in.read(); 
          adapter.stopListening(); 
         } 
         catch(IOException e){ 
         } 
         catch(CardException e){ 
          System.out.println("CardException: " + e.getMessage()); 
         } 
    
    } 
    

    CustomNDEFListener:

    public class CustomNDEFListener extends AbstractCardTool 
    { 
        @Override 
        public void doWithReaderWriter(MfClassicReaderWriter readerWriter) 
          throws IOException{ 
         NdefMessageDecoder decoder = NdefContext.getNdefMessageDecoder(); 
         MadKeyConfig config = MfConstants.NDEF_KEY_CONFIG; 
         if(readerWriter.hasApplicationDirectory()){ 
          System.out.println("Application Directory Found!"); 
          ApplicationDirectory directory = readerWriter.getApplicationDirectory(); 
         } 
         else{ 
          System.out.println("No Application Directory Found, creating one."); 
          readerWriter.createApplicationDirectory(config); 
    
         } 
        } 
    } 
    

    ここから、私はどのように実際に用として損失であるように見えますアプリケーションを作成し、アプリケーションと対話する。アプリケーションを作成してレコードオブジェクトを書き込むことができれば、TextMimeRecordタイプを使用して必要なデータを書き込むことができるはずです。そこにアクセスする方法はわかりません。何かご意見は?

    :: Addendum :: 明らかにnfc-toolsタグはありません。おそらくあるはずです。十分な担当者を持っている人は、それを作成するのに十分親切で、私の質問にそれを組み込むことはできますか?

    :: 2番目の補足:: また、私が必要とするもののために働くライブラリの指示で誰かが私を指し示すことができ、よく文書化されていて、Windows環境。

  • 答えて

    -3

    thisライブラリを確認しましたか?どのように貧弱な文書が残っているのかよく書かれています。実際にはJavaDocだけです。

    +2

    私は持っています。それは事実、全体の投稿が書かれている図書館です。 –

    関連する問題