1

How to use NFC and Camera at the same time

Each Service(NFC, Camera) work well seperatly

But if i use both on same activity NFC reader is not work

nfc reader polling is automatically disabled when camera opened

This is my app log this log ocurred when i switch activity (activity with camera -> activity without camera)

 I  isNFCAllowed is called for userId - 0
 D  NFC checking for 0
 W   container manager null for 0
 I  allow NFC for 0
 D  call the applyRouting
 I  [INFO:NativeNfcManager.cpp(2044)] nfcManager_enableDiscovery: enter
 I  [INFO:NativeNfcManager.cpp(4265)] storeLastDiscoveryParams: enter
 I  [INFO:NativeNfcManager.cpp(2083)] nfcManager_enableDiscovery: enter; tech_mask = 01, restart = 1
 I  [INFO:NativeNfcManager.cpp(3974)] startRfDiscovery: is start=0
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 31
 I  [INFO:NativeNfcManager.cpp(610)] nfaConnectionCallback: NFA_RF_DISCOVERY_STOPPED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(4191)] stopPolling_rfDiscoveryDisabled: disable polling
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 1
 I  [INFO:NativeNfcManager.cpp(590)] nfaConnectionCallback: NFA_POLL_DISABLED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(4169)] startPolling_rfDiscoveryDisabled: enable polling
 I  [INFO:NativeNfcManager.cpp(4173)] startPolling_rfDiscoveryDisabled: wait for enable event
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 0
 I  [INFO:NativeNfcManager.cpp(581)] nfaConnectionCallback: NFA_POLL_ENABLED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(2115)] nfcManager_enableDiscovery: Enable p2pListening
 I  [INFO:NativeNfcManager.cpp(3974)] startRfDiscovery: is start=1
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 37
 I  [INFO:NativeNfcManager.cpp(1030)] nfaConnectionCallback: unknown event ????
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 30
 I  [INFO:NativeNfcManager.cpp(600)] nfaConnectionCallback: NFA_RF_DISCOVERY_STARTED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(4128)] startStopPolling: enter; isStart=1
 I  [INFO:NativeNfcManager.cpp(1193)] nfaDeviceManagementCallback: enter; event=0x2
 I  [INFO:NativeNfcManager.cpp(1222)] nfaDeviceManagementCallback: NFA_DM_SET_CONFIG_EVT
 I  [INFO:NativeNfcManager.cpp(4156)] startStopPolling: exit
 I  [INFO:NativeNfcManager.cpp(2190)] nfcManager_enableDiscovery: exit
 I  Notify nfc service : camera open was(true) -> now(false) = polling(false)
 D  call the applyRouting
 I  [INFO:NativeNfcManager.cpp(2044)] nfcManager_enableDiscovery: enter
 I  [INFO:NativeNfcManager.cpp(4265)] storeLastDiscoveryParams: enter
 I  [INFO:NativeNfcManager.cpp(2083)] nfcManager_enableDiscovery: enter; tech_mask = 00, restart = 1
 I  [INFO:NativeNfcManager.cpp(3974)] startRfDiscovery: is start=0
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 31
 I  [INFO:NativeNfcManager.cpp(610)] nfaConnectionCallback: NFA_RF_DISCOVERY_STOPPED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(4191)] stopPolling_rfDiscoveryDisabled: disable polling
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 1
 I  [INFO:NativeNfcManager.cpp(590)] nfaConnectionCallback: NFA_POLL_DISABLED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(3974)] startRfDiscovery: is start=1
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 30
 I  [INFO:NativeNfcManager.cpp(600)] nfaConnectionCallback: NFA_RF_DISCOVERY_STARTED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(2190)] nfcManager_enableDiscovery: exit

**Changed Activity**

 D  call the applyRouting
 D  Discovery configuration equal, not updating.
 I  Notify nfc service : camera open was(false) -> now(true) = polling(true)
 D  call the applyRouting
 I  [INFO:NativeNfcManager.cpp(2044)] nfcManager_enableDiscovery: enter
 I  [INFO:NativeNfcManager.cpp(4265)] storeLastDiscoveryParams: enter
 I  [INFO:NativeNfcManager.cpp(2083)] nfcManager_enableDiscovery: enter; tech_mask = 2f, restart = 1
 I  [INFO:NativeNfcManager.cpp(3974)] startRfDiscovery: is start=0
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 31
 I  [INFO:NativeNfcManager.cpp(610)] nfaConnectionCallback: NFA_RF_DISCOVERY_STOPPED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(4191)] stopPolling_rfDiscoveryDisabled: disable polling
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 1
 I  [INFO:NativeNfcManager.cpp(590)] nfaConnectionCallback: NFA_POLL_DISABLED_EVT: status = 3
 I  [INFO:NativeNfcManager.cpp(4169)] startPolling_rfDiscoveryDisabled: enable polling
 I  [INFO:NativeNfcManager.cpp(4173)] startPolling_rfDiscoveryDisabled: wait for enable event
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 0
 I  [INFO:NativeNfcManager.cpp(581)] nfaConnectionCallback: NFA_POLL_ENABLED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(2115)] nfcManager_enableDiscovery: Enable p2pListening
 I  [INFO:NativeNfcManager.cpp(3974)] startRfDiscovery: is start=1
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 36
 I  [INFO:NativeNfcManager.cpp(1009)] nfaConnectionCallback: NFA_LISTEN_ENABLED_EVT : status=0x0
 I  [INFO:NativeNfcManager.cpp(1193)] nfaDeviceManagementCallback: enter; event=0x2
 I  [INFO:NativeNfcManager.cpp(1222)] nfaDeviceManagementCallback: NFA_DM_SET_CONFIG_EVT
 I  [INFO:NativeNfcManager.cpp(572)] nfaConnectionCallback: event= 30
 I  [INFO:NativeNfcManager.cpp(600)] nfaConnectionCallback: NFA_RF_DISCOVERY_STARTED_EVT: status = 0
 I  [INFO:NativeNfcManager.cpp(4128)] startStopPolling: enter; isStart=1
 I  [INFO:NativeNfcManager.cpp(1193)] nfaDeviceManagementCallback: enter; event=0x2
 I  [INFO:NativeNfcManager.cpp(1222)] nfaDeviceManagementCallback: NFA_DM_SET_CONFIG_EVT
 I  [INFO:NativeNfcManager.cpp(4156)] startStopPolling: exit
 I  [INFO:NativeNfcManager.cpp(2190)] nfcManager_enableDiscovery: exit

Roy
  • 41
  • 3
  • 1
    I've seen a number of people reporting this on certain hardware and from memory the conclussion was you cannot, the hardware manufacturer has specifically disabled this (presumably that the camera is many many mega pixels and that the gain needed means that the EM emissions needed to power the NFC card generates noise in the camera signal) – Andrew Jun 21 '23 at 21:09
  • Thank you @Andrew I tested Galaxy S23 & Flip 4 and google Pixel 3a this nfc problem occured only Galaxy Series – Roy Jun 23 '23 at 05:28

0 Answers0