android 4.3 nfc,nfc读卡在android 4.4以上与4.4以下写法的区别
对于android4.1-4.3以下nfc对卡片的读取就是以下代码:
NfcAdapter mAdapter = NfcAdapter.getDefaultAdapter(this);
public void registerReceiver() {
if (mAdapter != null) {
mFilters = new IntentFilter[]{
new IntentFilter(NfcAdapter.ACTION_TECH_DISCOVERED),
new IntentFilter(NfcAdapter.ACTION_NDEF_DISCOVERED),
new IntentFilter(NfcAdapter.ACTION_TAG_DISCOVERED)};
mPendingIntent = PendingIntent.getActivity(this, 0,
new Intent(this, this.getClass()).addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP), 0);
try {
mAdapter.enableForegroundDispatch(this, mPendingIntent, mFilters, null);
} catch (Exception e) {
}
}
}
public void unregisterReceiver() {
if (mAdapter != null) {
try {
mAdapter.disableForegroundDispatch(this);
} catch (Exception e) {
}
}
}
然后触发的代码在
protected void onNewIntent(Intent intent) {
Tag tagFromIntent = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);
IsoDep isoDep = IsoDep.get(tagFromIntent);
}
在 AndroidManifest.xml 的相应的activity加上
android:launchMode="singleTask"
而上面适用于android4.4以下的方法在android4.4也是可以运行,
不过会出现有些卡能读写,有些卡无限重连,有些卡两条指令之间不能超过300ms
对于android4.4以上nfc对卡片的读取就是以下代码:api19
public static int READER_FLAGS = NfcAdapter.FLAG_READER_NFC_A | NfcAdapter.FLAG_READER_SKIP_NDEF_CHECK;
private void enableReaderMode() {
Activity activity = getActivity();
NfcAdapter nfc = NfcAdapter.getDefaultAdapter(activity);
Bundle options = new Bundle();
options.putInt(NfcAdapter.EXTRA_READER_PRESENCE_CHECK_DELAY, 5000);//延迟对卡片的检测
if (nfc != null) {
nfc.enableReaderMode(activity, mCardReader, READER_FLAGS, options);
}
}
private void disableReaderMode() {
Activity activity = getActivity();
NfcAdapter nfc = NfcAdapter.getDefaultAdapter(activity);
if (nfc != null) {
nfc.disableReaderMode(activity);
}
}
在onTagDiscovered编写具体的卡片操作
@Override
public void onTagDiscovered(Tag tag) {
IsoDep isoDep = IsoDep.get(tag);
}
android 4.3 nfc,nfc读卡在android 4.4以上与4.4以下写法的区别相关推荐
- 转 : Squareup刷卡器,音频读卡识别android/iOS源码API
转 : Squareup刷卡器,音频读卡识别android/iOS源码API 相信很多人已经见过squareup的读卡器了,银行磁卡在该读卡器上一刷,则能从手机中获取银行卡磁道的信息. Squa ...
- android模拟器找不到sd卡,在Android模拟器bluestacks中打开虚拟SD卡的方法的详细说明...
安装Android模拟器后,每个人都可以在计算机上的Android手机上玩一些游戏,但不是全部. 由于某些游戏带有数据包,我该如何使用Android模拟器运行带有数据包的游戏?以下5068QQ游戏将告 ...
- Android NFC开发详解 总结和NFC读卡实例解析
文章目录 前言 一.什么是NFC? 二.基础知识 1.什么是NDEF? 2.NFC技术的操作模式 3.标签的技术类型 4.实现方式的分类 5.流程 三.获取标签内容 1.检查环境 2.获取NFC标签 ...
- Android nfc读卡模式流程
最近一个项目需要将Android的nfc接口底层通过串口对接到外围一个单片机上,而nfc设备是接在单片机上的,这就需要对Android的nfc框架进行梳理,确定与单片机对接的接口通讯:上网查找发现资料 ...
- android获取内部存储卡里的文件,获取Android内部存储(外部SD卡)和扩展存储卡(TF卡)的路径...
获取Android内部存储(外部SD卡)和扩展存储卡(TF卡)的路径 获取Android内部存储(外部SD卡)和扩展存储卡(TF卡)的路径 sd卡存储外部存储卡路径外部存储卡外部存储卡路径内置存储卡外 ...
- android rfid开发实例,Android NFC读卡 高频卡 RFID
[实例简介] Android NFC读卡 高频卡 RFID 仅供参考,有需要这方面资料的可以联系我 961500278@qq.com [实例截图] [核心代码] d303bda7-45a0-4b95- ...
- Android使用NFC读卡实现 (一)
Android使用NFC读卡实现 (一) Android使用NFC读卡实现 (二) 这是一篇写的用带NFC芯片的手机读卡的过程. 首先是创建Android工程.
- android nfc扇区加密,android NFC MifareClassic 读IC卡加密扇区方法
近段时间在做android下NFC的M1卡的加密扇区的读取,参考了Android_磊子的操作基础内容,但是涉及到MifareClassic类操作验证未能找到相关资料,后来查看了MifareClassi ...
- android nfc扇区加密,uniapp安卓NFC MifareClassic读IC卡加密扇区方法
近段时间在做android下NFC的M1卡的加密扇区的读取,但是涉及到MifareClassic类操作验证未能找到相关资料,后来查看了MifareClassic类的源代码和基于android原生案例, ...
最新文章
- 比较好的php源码,目前市面上能拿到的最好的PHP跑F分源码下载
- 【Linux系统编程】POSIX无名信号量
- 在win10中通过Anaconda3安装tensorflow
- Java笔记(一)—StringBuilder类
- AMD 5XXX 系列显卡的 peak bandwidth计算
- windows环境 logstash file input fail 解决
- mysql weindow 安装_windows下怎么安装mysql
- ESXi配置vCenter服务器
- PCWorld:谷歌成下一个微软式企业10大理由
- 大学生微信小程序项目总结
- GoLang - Go中Mocking(1)
- 漫画研发之九:浑水好摸鱼
- WPS/WORD论文格式调整方法
- 新课首发《物联网项目实战》
- 2007年度双语新闻特辑
- 如何将pdf转换成word格式不会出现乱码
- 拨乱反正!关于LoRaWAN的7个常见误解
- iCloud中的照片如何导出到个人电脑中进行储存?
- 2022IC秋招面经分享【华为·芯片与器件工程师(上海海思)】
- windows Folder Size 显示文件夹目录大小