使用按钮读取NFC卡(Isodep)

时间:2016-06-08 06:00:06

标签: android nfc contactless-smartcard

我对Android开发很新,并尝试读取nfc卡,并且想知道当用户按下按钮时是否可以读取它。我知道如果卡在读卡器附近或者敲击nfc读卡器(onTagDiscovered)时如何读卡。我想知道当用户按下按钮时是否可以,然后设备将读取该卡。

1 个答案:

答案 0 :(得分:0)

Android不能正常运作。

  1. 您可以在AndroidManifest中声明应用中的Activity可以读取NFC标记。
  2. 系统检测到标签时

    • 如果只有您的应用程序声明可以阅读NFC标签,那么Activity会在Intent
    • 中启动enableForgroundDispatch
    • 如果声明多个应用程序可以读取NFC标签 那么一个" popup"显示给用户选择应用程序

    另一种解决方案

    1. 您使用Activityhttps://developer.android.com/guide/topics/connectivity/nfc/advanced-nfc.html#foreground-dispatch
    2.   

      前台调度系统允许活动拦截   意图并声称优先于处理相同的其他活动   意图。使用该系统涉及构建一些数据结构   为Android系统能够发送适当的意图   你的申请。启用前台调度系统

      如果多个应用程序"听"到NFC标记,而您的enableForgroundDispatch位于前景,Activity只有您的应用,才会收到NFC发现的标记。

      使用以前的机制,您可以捕获from splinter import Browser from pyvirtualdisplay import Display d = Display(visible=0, size=(800, 600)) d.start() b = Browser('chrome') b.visit('http://www.google.com') b.quit() d.stop() 中的所有标签,当用户按下按钮时执行必要的操作,当用户不按按钮时,不执行任何操作。