如何使用NFC与Android Pay API?

14

我正在尝试使用NFCAndroid Pay API 实现 "触摸并支付(用于付款交易)"

我没有找到任何关于此的教程或示例。

我查看了developer.android.com,但是理解起来比较困难。

上述文档讲述了如何使用基于主机的卡模拟(可能我理解有误)与NFC通信。

如何实现它?是否有其他API或者我必须将支付协议基于主机的卡模拟服务集成?

public class MyHostApduService extends HostApduService {
    @Override
    public byte[] processCommandApdu(byte[] apdu, Bundle extras) {

       //Implement PAYMENT protocol here
    }
    @Override
    public void onDeactivated(int reason) {
       ...
    }
}

3
据我所了解,Android Pay API 是用于将支付方式整合到您的应用程序中(例如,在您的应用程序中支付披萨订单),而不是用于与 NFC 终端集成。这一点完全由 Android Pay 应用程序处理。 - icyerasor
2个回答

1

就像其他评论者所指出的那样。

至于Android Pay API-它旨在无需任何NFC终端进行付款...

回答于8月16日11:42Jehy

但是,您可能想查看类似Square这样的东西,它们制作了接受Android Pay的NFC读卡器。它们的成本约为50.00美元,我个人认为对于小型企业或个人来说这是便宜的。

您还应该查看他们的APIs,特别是:

面对面的商务。定制的iOS和Android销售点应用程序可以使用Square Register API与Square硬件安全地处理付款。

配备50美元的NFC读卡器和自定义构建的销售点应用程序,您可以以间接的方式实现合理的解决方案。尽管您的用户将会使用Android Pay或Apple Pay进行非接触式支付(没有重新发明轮子的必要)。

免责声明

截至此时,Square APIs并未在所有地区提供。

重要提示:目前,Square APIs仅在美国和加拿大提供。我们正在努力使其尽快在其他国家提供。


1

icyerasor的评论完全正确。如果你想使用Android Pay和NFC支付某些东西,你应该使用Android Pay应用程序。由于安全问题(例如,谷歌不允许在rooted设备或具有自定义屏幕锁的设备上使用Android Pay),您不能实现自定义支付应用程序。

至于Android Pay API - 它是设计用于无需任何NFC终端即可支付 - 仅从您的应用程序中。您可以在此处查看典型的付款流程 - 这些流程不能包括任何NFC联系。

如果你想知道NFC卡模拟是用来做什么的 - 它可以用于个人身份识别,而不是使用卡片,用于存储公交车票等。我认为可以制作一个自定义付款系统 - 但至少需要创建自定义银行处理和NFC终端(读卡器)(我再次重申您不能使用Android Pay)。这对于一家业务不在这个领域的小公司来说几乎是不可能的(非常昂贵,需要大量的许可工作和时间)。即使在此之后,您的应用程序也将被禁止在Google Play中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接