1

現在、Mifare カードに小さなテキストを書き込む Android アプリケーションを開発しようとしています。アプリケーションをプログラムしようとしましたが、コードが機能しません。Androidマニフェストに何を書かなければならないか知っている人はいますか? これが私のコードです。誰かが私を助けてくれれば、とても親切です。どうもありがとうございました

public static final Tag 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);
    }
}
4

1 に答える 1

2

あなたは使用する必要があります

sectorToBlock(int sectorIndex)

セクターの最初のブロックを決定する方法。次に、

getBlockCountInSector(int sectorIndex)

そのセクターに書き込むことができるブロック数(-1)を決定します。

上記のコードでは、セクター1を認証したときに、セクター0に書き込もうとしています。

于 2013-03-14T21:04:22.847 に答える