NFC - Запись в MiFare Classic 1K - PullRequest
       3

NFC - Запись в MiFare Classic 1K

2 голосов
/ 20 января 2012

Я хочу записать данные в mifare классические теги 1K. у кого-нибудь есть рабочий пример кода для этого? Я не могу найти достаточно информации об этом в Интернете. Спасибо!

Ответы [ 2 ]

3 голосов
/ 25 апреля 2013

Если у вас есть намерение обнаружить NFC, вы можете использовать этот фрагмент:

private void WriteCard(Intent intent) {
    String action = intent.getAction();
    if (NfcAdapter.ACTION_TECH_DISCOVERED.equals(action)) {
        Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
        MifareClassic mfc = MifareClassic.get(tagFromIntent);
        try {
            mfc.connect();
            boolean authA = mfc.authenticateSectorWithKeyA(1,
                    MifareClassic.KEY_DEFAULT);
            Log.d("MainActivity.WriteCard()", String.valueOf(authA) + " ");
            mfc.writeBlock(mfc.sectorToBlock(1), new byte[] { 'A', 'l','v', 'a', 'r', 'e', 'z', ' ', ' ', ' ', ' ', ' ', ' ',' ', ' ', ' ' });
            mfc.close();
        } catch (IOException ioe) {
            ioe.printStackTrace();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    return;
}

В этом примере я пишу в секторе 1, блок 0. Убедитесь, что вы пытаетесь писать в «действительном» секторе с помощью соответствующего ключа.

3 голосов
/ 11 февраля 2012

Пример кода доступен на http://nearfieldcommunication.com/developers/android/

...