关于android的nfc问题 Ultralight c (通用卡)
2013-12-04 23:21
330 查看
最近在研究android的nfc问题
首先再网上有很多关于android nfc 读写的问题,但是大多数都是关于Mifare Classic类型卡的读写,我百试不得骑解,于是自己写了一些程序供大家参考,
我的手机android 4.4,google Nexus4
nfc 卡的类型是:ultralight c
读取ndef关键代码:
对nfc有意写了解的人就会知道传入的tag是靠 tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
这么来的,具体的就不多说了,相信大家网上已经搜到了好多
还有写入ndef数据的关键代码
好了,到此为止我们就成功的读取或写入了ndef卡的ndef信息了,
希望能帮到大家!
首先再网上有很多关于android nfc 读写的问题,但是大多数都是关于Mifare Classic类型卡的读写,我百试不得骑解,于是自己写了一些程序供大家参考,
我的手机android 4.4,google Nexus4
nfc 卡的类型是:ultralight c
读取ndef关键代码:
public String readNdef(Tag tag) { String result = null; Ndef ndef = Ndef.get(tag); try { ndef.connect(); NdefMessage msg = ndef.getNdefMessage(); result = new String(msg.toByteArray()); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (FormatException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { if(ndef != null && ndef.isConnected()) { ndef.close(); ndef = null; } } catch (IOException e) { e.printStackTrace(); } } return result; }
对nfc有意写了解的人就会知道传入的tag是靠 tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
这么来的,具体的就不多说了,相信大家网上已经搜到了好多
还有写入ndef数据的关键代码
public void writeNdef(Tag tag,String Text) { Ndef ndef = Ndef.get(tag); try { ndef.connect(); byte[] data = Text.getBytes(); NdefMessage msg = new NdefMessage( new NdefRecord[] { createMimeRecord( "application/com.bjypc.han.googlejuesai", data) }); ndef.writeNdefMessage(msg); } catch (IOException e) { e.printStackTrace(); } catch (FormatException e) { e.printStackTrace(); } finally { try { if(ndef != null && ndef.isConnected()) { ndef.close(); ndef = null; } } catch (IOException e) { e.printStackTrace(); } } }
public NdefRecord createMimeRecord(String mimeType, byte[] payload) { byte[] mimeBytes = mimeType.getBytes(Charset.forName("US-ASCII")); NdefRecord mimeRecord = new NdefRecord( NdefRecord.TNF_MIME_MEDIA, mimeBytes, new byte[0], payload); return mimeRecord; }
好了,到此为止我们就成功的读取或写入了ndef卡的ndef信息了,
希望能帮到大家!
相关文章推荐
- android 代码实现控件之间的间距
- 解決Linux下Android开发真机调试设备不被识别问题
- [Android]在代码里运行另一个程序的方法
- [软件咨询]WPS2012正式版已发布 金山Office移动版4.0发布
- Android笔记-Linux Kernel Ftrace (Function Trace)解析
- android USB如何修改VID具体实现
- Android Mouse实现过程详细笔记
- 深入Android Browser配置管理的详解
- Android Mms之:深入理解对话列表管理
- Android APP与媒体存储服务的交互
- android 多线程技术应用
- Android之采用execSQL与rawQuery方法完成数据的添删改查操作详解
- Android数据类型之间相互转换系统介绍
- 通过Android trace文件分析死锁ANR实例过程
- Android实现左右滑动效果的方法详解
- Android 各国语言缩写及简称详细介绍
- Android 自动判断是电话,网址,EMAIL方法之Linkify的使用
- android IPC之binder通信机制
- Android应用开发中模拟按下HOME键的效果(实现代码)
- Android 读写文件方法汇总