是否可以在 Android 上读取与第三方应用程序的 NFC 通信?
Posted
技术标签:
【中文标题】是否可以在 Android 上读取与第三方应用程序的 NFC 通信?【英文标题】:Is it possible to read NFC communication with a third party app on Android? 【发布时间】:2021-02-15 01:13:02 【问题描述】:我是一名爱好 android 应用程序开发人员。带着这个问题,我想看看是否值得学习 NFC。
我的目标是编写一个应用程序,该应用程序可以跟踪我的银行卡付款,这些付款是通过我的手机在银行卡终端上通过 NFC 支付的。
在建议的标题中,我的问题是,我是否可以“嗅探”我的银行应用程序和银行卡终端的 NFC 流量并获取有关付款的一些信息。 进一步的问题,如果这不可能,是否可以直接与我的银行应用程序通信并获取信息?
【问题讨论】:
【参考方案1】:简短的回答是“不”,您无法嗅探 NFC 流量。
通常对于银行卡,它们被加载到主机操作系统无法访问的 NFC 控制器的安全元件中。
见https://developer.android.com/guide/topics/connectivity/nfc/hce上的描述
安全元件本身执行与 NFC 终端的通信,交易完全不涉及 Android 应用程序。交易完成后,Android应用程序可以直接查询安全元件以获取交易状态并通知用户。
因此,手机上安装的任何银行应用都与基于 NFC 的交易无关。
尽管您的银行应用程序可以做到这一点,但您也许可以在交易后查询安全元素。
【讨论】:
以上是关于是否可以在 Android 上读取与第三方应用程序的 NFC 通信?的主要内容,如果未能解决你的问题,请参考以下文章