如何在Android中将NFC标签设为只读?

时间:2016-09-04 09:43:47

标签: android nfc

我遇到了锁定NFC标签的问题。我的代码如下:

    public void makeReadOnly(Tag tag) {
    if (tag == null) {
        Log.e("tag", "Tag Is Null");
        return;
    }
    try {

        Ndef ndef = Ndef.get(tag);
        if (ndef != null) {
            Log.e("eeeeeee111111", "New1111");
            ndef.connect();

            if(ndef.canMakeReadOnly()){
                ndef.canMakeReadOnly();
                Log.e("Read Only", "Read Only");
            }
            Log.e("Lock.......", "Lock.......");

        //  ndef.canMakeReadOnly();
            ndef.close();
        //  Log.e("22222.......", "2222.......");

        }



    } catch (IOException e) {
        // TODO Auto-generated catch block
        Log.e("EEEEEEEEEEEEE", e.toString());
        e.printStackTrace();
    }

}

它根本没有显示任何错误。但没有锁定NFC标签。

1 个答案:

答案 0 :(得分:1)

如果标签可以只读,则

v0.7.1会返回。使用canMakeReadOnly()实际执行此操作(猜测这是一个简单的疏忽)。

替换以下内容:

makeReadOnly()

有了这个:

if(ndef.canMakeReadOnly()){
    ndef.canMakeReadOnly();
    Log.e("Read Only", "Read Only");
}