Page 107 - 3-2
P. 107
int numOfBlock;
final int FIX_SECTOR_COUNT = 16;
boolean success;
final int numOfSector = 16;
final int numOfBlockInSector = 4;
byte[][][] buffer = new
byte[numOfSector][numOfBlockInSector][MifareClassic.BLOCK_SIZE];
ReadMifareClassicTask(MifareClassic tag){
taskTag = tag;
success = false;
}
@Override
protected Void doInBackground(Void... params) {
try {
taskTag.connect();
for(int s=0; s<numOfSector; s++){
if(taskTag.authenticateSectorWithKeyA(s, MifareClassic.KEY_DEFAULT)) {
for(int b=0; b<numOfBlockInSector; b++){
int blockIndex = (s * numOfBlockInSector) + b;
buffer[s][b] = taskTag.readBlock(blockIndex);
}
}
}
success = true;
} catch (IOException e) {
e.printStackTrace();
} finally{
if(taskTag!=null){
try {
taskTag.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return null;
}
- 107 -