public String readTag(Tag tag) { MifareUltralight ultralight = MifareUltralight.get(tag); try { ultralight.connect(); byte[] data = ultralight.readPages(4); return new String(data, Charset.forName("GB2312")); } catch (Exception e) { } finally { try { ultralight.close(); } catch (Exception e) { } } return null; } }
Tag tag = intent.getParcelableExtra(NfcAdaptor.EXTRA_TAG); MifareUltralight ul = MifareUltralight.get(tag); if(ul == null) return; // not MIFARE Ultralight byte[] authenticateCommand = { ... }; // data for authentication command byte[] authenticateResponse = ul.transceive(authenticateCommand); // send it ... // etc.
public void writeTag(Tag tag) { MifareUltralight ultralight = MifareUltralight.get(tag); try { ultralight.connect(); //写入八个汉字,从第五页开始写,中文需要转换成GB2312格式 ultralight.writePage(4, "北京".getBytes(Charset.forName("GB2312"))); ultralight.writePage(5, "上海".getBytes(Charset.forName("GB2312"))); ultralight.writePage(6, "广州".getBytes(Charset.forName("GB2312"))); ultralight.writePage(7, "天津".getBytes(Charset.forName("GB2312"))); Toast.makeText(this, "写入成功", Toast.LENGTH_SHORT).show(); } catch (Exception e) { } finally { try { ultralight.close(); } catch (Exception e) { } } } }
tagTech = MifareUltralight.get(tag); } else if (tech.equals(android.nfc.tech.NfcA.class.getName())) { tagTech = NfcA.get(tag);
MifareUltralight mifareUltralight = MifareUltralight.get(tag); if(mifareUltralight == null) { throw new IllegalArgumentException("No Mifare Ultralight"); mifareUltralight.connect(); int type = mifareUltralight.getType(); switch (type) { case MifareUltralight.TYPE_ULTRALIGHT: { bout.write(mifareUltralight.readPages(i)); mifareUltralight.close();