NFC 读取不适用于 IPC 的使用
NFC reading not working with the usage of IPC
我制作了使用 NFC 并读取 IsoDep 类型标签的应用程序。一切正常,我可以正常、重复地读取 NFC 标签。我正在尝试将信息从 NFC 标签传递到远程服务。
但是绑定到进程间通信 (IPC) 服务后,NFC 无法正常工作:
bindService(serviceIntent, mConnection, Context.BIND_AUTO_CREATE);
在 onServiceConnected 中,我通过 AIDL IPC 机制与另一个应用程序的服务建立连接,然后它变得非常奇怪。我只能扫描一次或两次 NFC 标签,然后 NFC 就完全停止工作了。不再调用 onNewIntent 方法。
我尝试按主页按钮,activity 进入后台,当我尝试从那里读取 NFC 标签时,它甚至不显示提供各种支持 NFC 的应用程序的对话框。只有当我在设置中重新启动 NFC 时,它才会再次开始工作。
我正在使用带有 Android Marshmallow 的 Galaxy S5。 NFC 在其他应用程序中正常工作(我猜那些没有使用 IPC)。我还按照此处所述使用前台调度:https://developer.android.com/guide/topics/connectivity/nfc/advanced-nfc#foreground-dispatch
我到处搜索,我运行没主意了。
所以它确实适用于特定类型的 IsoDep NFC 标签(在这种情况下是身份证内的标签),我必须使用它。到目前为止,我使用了错误类型的 NFC 标签。我想问题出在我绑定的服务上。这是来自第 3 方应用程序的服务,因此我无法更改它。
我制作了使用 NFC 并读取 IsoDep 类型标签的应用程序。一切正常,我可以正常、重复地读取 NFC 标签。我正在尝试将信息从 NFC 标签传递到远程服务。
但是绑定到进程间通信 (IPC) 服务后,NFC 无法正常工作:
bindService(serviceIntent, mConnection, Context.BIND_AUTO_CREATE);
在 onServiceConnected 中,我通过 AIDL IPC 机制与另一个应用程序的服务建立连接,然后它变得非常奇怪。我只能扫描一次或两次 NFC 标签,然后 NFC 就完全停止工作了。不再调用 onNewIntent 方法。
我尝试按主页按钮,activity 进入后台,当我尝试从那里读取 NFC 标签时,它甚至不显示提供各种支持 NFC 的应用程序的对话框。只有当我在设置中重新启动 NFC 时,它才会再次开始工作。
我正在使用带有 Android Marshmallow 的 Galaxy S5。 NFC 在其他应用程序中正常工作(我猜那些没有使用 IPC)。我还按照此处所述使用前台调度:https://developer.android.com/guide/topics/connectivity/nfc/advanced-nfc#foreground-dispatch
我到处搜索,我运行没主意了。
所以它确实适用于特定类型的 IsoDep NFC 标签(在这种情况下是身份证内的标签),我必须使用它。到目前为止,我使用了错误类型的 NFC 标签。我想问题出在我绑定的服务上。这是来自第 3 方应用程序的服务,因此我无法更改它。