2013-03-14 115 views
1

我目前正在開發一個android應用程序,它將在Mifare卡上寫一個小文本。 我試圖編寫一個應用程序,但代碼不起作用。有人知道我必須在Android Manifest上編寫什麼? 這是我的代碼,如果有人能幫助我,它會非常友善。非常感謝用我們自己的Android應用程序寫在MifareClassic卡上

public static final標籤CREATOR = null;

public void ecrirenfc(Tag tag) { 

    MifareClassic mfc = MifareClassic.get(tag); 

    try { 
     mfc.connect(); 
     boolean auth = false; 

     auth = mfc.authenticateSectorWithKeyA(1, MifareClassic.KEY_DEFAULT); 

     if (auth) { 
      String text = "Hello, World!"; 
      byte[] value = text.getBytes(); 
      byte[] toWrite = new byte[MifareClassic.BLOCK_SIZE]; 

      for (int i = 0; i < MifareClassic.BLOCK_SIZE; i++) { 
       if (i < value.length) 
        toWrite[i] = value[i]; 
       else 
        toWrite[i] = 0; 
      } 

      mfc.writeBlock(1, toWrite); 
     } 

    } catch (IOException e) { 
    } 
} 

public void onClick(View view) { 
    if (view.getId() == R.id.button1) { 
     ecrirenfc(CREATOR); 
    } 
} 
+0

你考慮使用NDEF格式,而不是你自己的,自產自銷的寫入扇區0? – ThomasRS 2013-03-14 21:05:14

回答

2

您需要使用

方法來確定該部門的第一個塊。然後使用

getBlockCountInSector(int sectorIndex) 

以確定有多少塊(-1),你可以寫信給該部門。

爲了您上面的代碼,你想,當你已經認證部門一

相關問題