2016年11月9日 昨天晚上刷了氢os2.0,读卡倒是没问题。不过第三方系统似乎依旧无解,这段时间一直比较忙,这一年看了SudaMod的Nfc部分的源码,很是头大,根本不知道从哪里下手,最后觉得干脆舍弃这个功能算了。。。
6月24日 简单替换了几个文件后,会无限fc。 问题应该在framwork上 或者是libcuuc.so ucnv_convertEx_51是个什么鬼
2015年6月23日
又看了一天,一直很纠结,不知道是boot.img里面kernel 的问题 还是framework的问题,今天直接解包color的kernel 替换了cm 的 kernel 发现直接就死在了第一屏,看来这个方法并不行的通,也许并不是底层驱动的原因,而是系统的问题。这几天考试,等几天改改framework试试
可疑文件fcNci.apk,NfceeService.apk
libnfc-brcm.conf,libnfc-nxp.conf
libpn547_fw.so
system/lib libnfc.so,libnfc_nci_jni.so,libnfc-nci.so,libp61_spi_jni.so,libp61-jcop-kit.so,libp61-spi.so
framework-res.apk
---------
新发现(感觉需要自己编译源码的说。。。有空再研究研究,没学过安卓啥的,应该是系统没有给应用发送读到m1卡信息 - - 我也不清楚啦 不过一直想着改下package android.nfc.tech
不知道有没有可能,加油!):
Android中对NFC的实现代码分布在如下几个地方:
./frameworks/base/core/java/android/nfc/
./frameworks/base/core/java/android/nfc/tech
./frameworks/base/core/java/com/android/internal/nfc/
./external/libnfc-nxp
./packages/apps/nfc
其中
./external/libnfc-nxp是用C语言编写的函数库,编译生成libnfc和libnfc_ndef两个函数库。libnfc是一个主要的库,实现了NFC Stack的大部分功能,主要供NFC的服务进程调用。
libnfc_ndef是一个很小的函数库,主要是实现NDEF消息的解析,供Framework调用。
./packages/apps/nfc是一个类似于电话本的应用程序,但这个程序在手机开机后自动启动,一直运行,是作为NFC的服务进程存在的。是NFC架构中的核心。
./frameworks/base/core/java/android/nfc/,./frameworks/base/core/java/android/nfc/tech和./frameworks/base/core/java/com/android/internal/nfc/这三个目录
实现了NFC的应用接口,其中./frameworks/base/core/java/com/android/internal/nfc/是一些内部类或结构,不对外开放,仅供./frameworks/base/core/java/android/nfc/和
./frameworks/base/core/java/android/nfc/tech中的类调用。
./frameworks/base/core/java/android/nfc实现了接口包com.android.nfc,./frameworks/base/core/java/android/nfc/tech实现了接口包com.android.nfc.tech.
附录:
NFC Service的说明
NFC: Move NFC service implementation out of system_server.
NFC service is now an application service in packages/apps/Nfc.
NFC service is registered through ServiceManager.addService(), and the proxy object NfcAdapter obtains a handle to it through
ServiceManager.getService().
**Important** Had to add new symbols AID_NFC / NFC_UID / android.uid.nfc and modify service_manager.c, Process.java and PackageManagerService.java
in order to force the com.android.nfc process to take a fixed uid, so that it can use ServiceManager.addService().
Most of the JNI has moved to packages/apps/Nfc/jni. However NdefRecord and NdefMessage require some in-process native code, so
android_com_NdefMessage.cpp and android_com_NdefRecord.cpp stay in frameworks/base/core/jni. They link to a very small library libnfc_ndef.sothat implements NDEF message parsing. This has been added to core.mk so all devices (even without NFC hardware) can work with NDEF data.
以上引用“http://www.21ic.com/app/rf/201206/127884.htm”
-- 这是很久以前的了 - -
今晚刷了CM12 不可以用
驱动文件可能不止这一个,等发现了新方法之后再更新。
首先说明一点,本人小白,并非什么大神,此方法也是万般无奈下发现的,不保证适合所有的rom , 而且可能会导致一个包含nfc字眼的系统程序fc(猜的),不过导致fc后,可以通过adb shell 恢复你原来的,有能力的加油实验一下及时反馈。
若好用,希望大神做两个卡刷包(我觉得我的包经常会出问题),一个是备份并替换此文件的,一个是恢复备份的。
若不好用,希望大家不要喷我。。。
公交卡应该是m1卡,Mifare*** 我对比了下不能刷卡的rom与colorOS的rom感觉Color下的libnfc-nxp.conf 多了关于m1卡的一些东西,于是就替换掉了,就ok了
方法如下:
下载附件后解压放到/etc 下(记得备份原来的) 修改权限为0644 重启即可