Android NFC 可以在没有用户 input/action 或没有通知的情况下工作吗?

Can Android NFC work without user input/action or without notification?

目前,我正在研究为 Android 和 iOS 编写具有以下功能的考勤应用程序的可行性。 iOS - 无法自动化。每次点击标签时都需要用户输入或点击。

但是,关于 Android NFC 功能,我没有很多 google 结果。 我想在我的考勤应用程序中使用以下功能。

我想自动执行上述步骤,并且在出勤移动设备应用程序(出勤亭)中不需要用户(员工)action/input/clicking。

在 Android 移动和 NFC 应用程序中是否可行?

Can Android NFC work without user input/action or without notification?

当然不是。至少用户必须允许连接(通过 BLE 或 NFC)

所以你说过屏幕将被锁定,但这意味着 NFC 将对普通应用程序禁用,并且你向用户显示内容的能力有限。

但这并不是您真正想要做的,您实际上想要在自助服务终端类型模式下解锁设备。有第三方解决方案可以做到这一点,但您可以使用来自 Dedicated devices API

一旦您使您的应用程序成为唯一可以 运行 在前台运行的应用程序,并且设备将永远不会进入睡眠状态或使用专用设备功能自行锁定,那么您的应用程序就可以在没有用户的情况下读取和处理 NFC 卡按照普通前台NFC APP进行交互(我建议使用EnableReaderMode NFC API来执行此操作,因为它不必暂停并重新启动前台应用程序来读卡)

其他要点

  • 设备需要由主电源供电,否则会很快没电
  • 不要使用OLED屏幕,否则会出现烧屏问题
  • 不要使用标签 ID,因为这可能是伪造的并且不安全,请使用加密方法将数据安全地写入标签
  • 使用 phone 不利于用户交互,因为 NFC reader 通常在背面,通常他们不会通过屏幕阅读,因此用户需要访问phone 后面放置要读取的标签

总的来说,有些工作是可行的,所有用户需要做的就是轻触 phone 背面的 NFC 标签。