1
Biggoldfish 2023-04-01 19:29:46 +08:00
公交完全是可以通过现有的系统 API 实现的,之前有微信小程序可以支持 NFC 公交卡,只是大多数手机厂商直接做成了系统应用
而且在美国 NFC 公交卡都是 Google Wallet/Apple Pay 里添加一下就行了,没有第三方应用自己实现公交卡的需求(也很少会有人用 |
2
fromzero 2023-04-01 19:34:22 +08:00
可能觉得不安全吧
|
3
kangyue9999 2023-04-01 19:43:02 +08:00
为什么要提供 NFC 的 API, android 又没有要求所有手机内置 NFC. NFC 对于手机来说本来就像是蓝牙一样的选配外设,顶多是一个分享功能。对于支付和门禁这种的应用就更是选配中的选配了。
只不过因为国内厂商很卷,所以大家看起来好像是标配,但是这不代表说 anroid 就得把这个应用包进系统里啊 |
4
CEBBCAT 2023-04-01 20:10:40 +08:00
@kangyue9999 #3 是不是我理解不太对?我觉得楼主的重点是 API
|
5
ysc3839 2023-04-01 22:18:30 +08:00 via Android 2
那些 NFC 功能都是 NFC 芯片提供的,没有标准接口的。
Android 有 NFC 卡模拟接口,是因为市面上绝大多数 NFC 芯片都支持这种模式,且实际应用场景很广泛,如模拟银行卡。 目前银行卡交易系统都是实时联网的,所以卡模拟只需要交换一个一次性授权密钥即可,其他数据是联网验证的。 而公交卡系统中很多刷卡机只能做到定时联网同步数据,做不到实时联网,那刷卡机不可避免要信任卡中的数据,这就涉及到了数据复制的问题,那就不能用纯软件的模拟方案了。因此大部分 NFC 芯片不会支持这种模拟方式,即使 Android 定义了这个接口,结果也会是没有厂商支持。实际上 Android 是支持 NFC SIM 的,利用 SIM 卡来充当公交卡的安全芯片。 |
6
datou 2023-04-01 22:45:00 +08:00
我记得 16 年左右很多手机都支持和包的 nfc-sim 呀
|
7
yolee599 2023-04-02 00:09:40 +08:00 via Android 1
andriod 太容易 hack 了,和支付相关的越开放风险越高
|
8
felixlong 2023-04-02 09:42:27 +08:00
|
10
wanghui22718 2023-04-03 16:22:11 +08:00
安全问题。刚好深入研究过一点,api 是有的,但是对 m1 卡数据扇区的模拟依赖 nfc 芯片,需要一个芯片密钥才能进行,因安全问题只能设备制造商存有,不可能提供第三方随意使用。
|
11
lc5900 2023-04-03 17:48:32 +08:00
安全问题吧,ESE 的权限不能随便开放,不过可以用 HCE 来软实现部分功能
|