I have an app that I recently upgraded to work on Android 12 devices. I am running this app on an Android 8 TC56 device, and see this error from my app when I try to use the barcode scanner. Apart from that, other apps on the TC56 suddenly become unable to use the barcode scanner (it doesn't light up) until my app is force quit.
The same issues don't occur on a TC57 Android 8 device though, which leads me to believe this is an issue with the Zebra firmware. If anyone is able to help out here that would be great thanks!
02-07 14:34:52.255 757 1152 I ScannerFramework: [TriggerAdapter::TriggerKeyEvent] Event 'HardKeyUpEvent' received on Decision tree 02-07 14:34:52.256 757 1152 I ScannerFramework: [Scanner::ScannerStop] 'ScannerStop' called, Calling process pid '757' 02-07 14:34:52.256 757 1152 W ScannerFramework: [StateMachine::IsTransitionValid] Tx code is invalid for both scanner and user 02-07 14:34:52.256 757 1152 I ScannerFramework: [Scanner::ScannerStop] - eError '3' 02-07 14:34:52.256 757 1152 E ScannerFramework: [TriggerAdapter::TriggerKeyEvent] Event 'HardKeyUpEvent' received on Decision tree 02-07 14:34:52.256 1115 3478 E ActivityManager: Sending non-protected broadcast com.symbol.button.R1 from system 1115:system/1000 pkg android 02-07 14:34:52.256 1115 3478 E ActivityManager: java.lang.Throwable 02-07 14:34:52.256 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.checkBroadcastFromSystem(ActivityManagerService.java:19399) 02-07 14:34:52.256 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:19915) 02-07 14:34:52.256 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:20150) 02-07 14:34:52.256 1115 3478 E ActivityManager: at android.app.ContextImpl.sendBroadcastAsUser(ContextImpl.java:1130) 02-07 14:34:52.256 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.broadcastPublicKeyIntent(RemoteKeyEventService.java:682) 02-07 14:34:52.256 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.handleKeyEvent(RemoteKeyEventService.java:537) 02-07 14:34:52.256 1115 3478 E ActivityManager: at com.android.server.wm.InputMonitor.interceptKeyBeforeQueueing(InputMonitor.java:513) 02-07 14:34:52.256 1115 3478 E ActivityManager: at com.android.server.input.InputManagerService.interceptKeyBeforeQueueing(InputManagerService.java:1977) 02-07 14:34:52.258 757 1152 I ScannerFramework: [TriggerAdapter::TriggerKeyEvent] Event 'HardKeyUpEvent' received on Decision tree 02-07 14:34:52.258 757 1152 I ScannerFramework: [Scanner::ScannerStop] 'ScannerStop' called, Calling process pid '757' 02-07 14:34:52.258 757 1152 W ScannerFramework: [StateMachine::IsTransitionValid] Tx code is invalid for both scanner and user 02-07 14:34:52.258 757 1152 I ScannerFramework: [Scanner::ScannerStop] - eError '3' 02-07 14:34:52.258 757 1152 E ScannerFramework: [TriggerAdapter::TriggerKeyEvent] Event 'HardKeyUpEvent' received on Decision tree 02-07 14:34:52.259 1115 3478 E ActivityManager: Sending non-protected broadcast com.symbol.button.R1 from system 1115:system/1000 pkg android 02-07 14:34:52.259 1115 3478 E ActivityManager: java.lang.Throwable 02-07 14:34:52.259 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.checkBroadcastFromSystem(ActivityManagerService.java:19399) 02-07 14:34:52.259 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:20008) 02-07 14:34:52.259 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:20150) 02-07 14:34:52.259 1115 3478 E ActivityManager: at android.app.ContextImpl.sendBroadcastAsUser(ContextImpl.java:1130) 02-07 14:34:52.259 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.broadcastPublicKeyIntent(RemoteKeyEventService.java:682) 02-07 14:34:52.259 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.handleKeyEvent(RemoteKeyEventService.java:537) 02-07 14:34:52.259 1115 3478 E ActivityManager: at com.android.server.wm.InputMonitor.interceptKeyBeforeQueueing(InputMonitor.java:513) 02-07 14:34:52.259 1115 3478 E ActivityManager: at com.android.server.input.InputManagerService.interceptKeyBeforeQueueing(InputManagerService.java:1977) 02-07 14:34:52.261 1115 3478 D WindowManager: RemoteKeyEventService to handle 02-07 14:34:52.261 1115 3477 D PowerManagerService: userActivityNoUpdateLocked: eventTime=5049739, event=1, flags=0x0, uid=1000 02-07 14:34:52.261 1115 3477 D PowerManagerService: updateUserActivitySummaryLocked: mWakefulness=Awake, mUserActivitySummary=0x1, nextTimeout=5102739 (in 52993 ms) 02-07 14:34:52.262 1115 3477 D PowerManagerService: updateDisplayPowerStateLocked: mDisplayReady=true, policy=3, mWakefulness=1, mWakeLockSummary=0x1, mUserActivitySummary=0x1, mBootCompleted=true, mScreenBrightnessBoostInProgress=false, mIsVrModeEnabled= false, sQuiescent=false 02-07 14:34:52.262 1115 3478 E ActivityManager: Sending non-protected broadcast com.symbol.button.R1 from system 1115:system/1000 pkg android 02-07 14:34:52.262 1115 3478 E ActivityManager: java.lang.Throwable 02-07 14:34:52.262 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.checkBroadcastFromSystem(ActivityManagerService.java:19399) 02-07 14:34:52.262 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:19915) 02-07 14:34:52.262 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:20150) 02-07 14:34:52.262 1115 3478 E ActivityManager: at android.app.ContextImpl.sendBroadcastAsUser(ContextImpl.java:1130) 02-07 14:34:52.262 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.broadcastPublicKeyIntent(RemoteKeyEventService.java:682) 02-07 14:34:52.262 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.handleKeyEvent(RemoteKeyEventService.java:537) 02-07 14:34:52.262 1115 3478 E ActivityManager: at com.android.server.wm.InputMonitor.interceptKeyBeforeQueueing(InputMonitor.java:513) 02-07 14:34:52.262 1115 3478 E ActivityManager: at com.android.server.input.InputManagerService.interceptKeyBeforeQueueing(InputManagerService.java:1977) 02-07 14:34:52.264 1115 3478 E ActivityManager: Sending non-protected broadcast com.symbol.button.R1 from system 1115:system/1000 pkg android 02-07 14:34:52.264 1115 3478 E ActivityManager: java.lang.Throwable 02-07 14:34:52.264 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.checkBroadcastFromSystem(ActivityManagerService.java:19399) 02-07 14:34:52.264 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntentLocked(ActivityManagerService.java:20008) 02-07 14:34:52.264 1115 3478 E ActivityManager: at com.android.server.am.ActivityManagerService.broadcastIntent(ActivityManagerService.java:20150) 02-07 14:34:52.264 1115 3478 E ActivityManager: at android.app.ContextImpl.sendBroadcastAsUser(ContextImpl.java:1130) 02-07 14:34:52.264 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.broadcastPublicKeyIntent(RemoteKeyEventService.java:682) 02-07 14:34:52.264 1115 3478 E ActivityManager: at com.android.server.RemoteKeyEventService.handleKeyEvent(RemoteKeyEventService.java:537) 02-07 14:34:52.264 1115 3478 E ActivityManager: at com.android.server.wm.InputMonitor.interceptKeyBeforeQueueing(InputMonitor.java:513) 02-07 14:34:52.264 1115 3478 E ActivityManager: at com.android.server.input.InputManagerService.interceptKeyBeforeQueueing(InputManagerService.java:1977) --- 02-07 14:33:43.037 1115 4167 D PowerManagerService: acquireWakeLockInternal: lock=159770176, flags=0x1, tag="IntentOp:.common.broadcast.BackgroundBroadcastReceiverSupport$PersistentReceiverIntentOperation", ws=WorkSource{10022 com.google.android.gms}, uid=10022, pid=6727
10 Replies
Hi,
Are you using the EMDK in your app at all? Typically seeing scanning functionality hang until an app is forced closed is usually due to mishandling EMDK Barcode object.
If not, are any of the keys remapped on the device? It may be worth factory resetting the device w/ the issue to see if this resolves the problem.
Thanks,
James
Hi James, thanks for the quick reply! No, we don't use EMDK. And no, factory reset does not help. We don't do any remapping (don't even know what that means actually). And in any case, why does it work on TC57 and not on TC56? This is across users (couple of my teammates are testing too).
Could you check that the device is using the latest BSP/LG update? You can download the latest release here.
This is the app - https://play.google.com/store/apps/details?id=com.amazon.ihm.candycane
Also, yes, will check now, thanks again!
So there are no pending system updates the device(s) show. In fact, they're subscribed to auto-updates. Is there anything else I need to check for the same?
Hi @James Swinton-Bland, do you by any chance have any other resources I can use to debug this issue I'm facing?
I'm wondering if the exception stacktrace is indeed not an issue, and the real issue is this line:
> 02-07 14:34:52.256 757 1152 I ScannerFramework: [Scanner::ScannerStop] - eError '3'
In TC57, I neither get the exception stacktrace, not do I have this above line.
My logs in TC57 if I do a scan (same APK, also a device on Android 8) are just:
02-04 21:54:37.149 1933 2288 D RemoteKeyEventService: handleKeyEvent
02-04 21:54:37.150 1261 1550 I ScannerFramework: [TriggerAdapter::TriggerKeyEvent] Event 'HardKeyUpEvent' received on Decision tree scanner:0 code:137
02-04 21:54:37.150 1261 1550 I ScannerFramework: [Scanner::ScannerStop] 'ScannerStop' called, Calling process pid '1261'
02-04 21:54:37.150 1261 1550 W ScannerFramework: [StateMachine::IsTransitionValid] Tx code is invalid for both scanner and user
Could you go into settings & share the current BSP & LG version you are running on both devices? It should be under Settings > About > Build Number.
Hi @James Swinton-Bland,
In the TC56 I have with me currently:
"Settings -> System -> About Phone" I see the following info:
Model & Hardware: TC56CJ & 121
Android version: 8.1.0
Android security patch level: October 1, 2019
Baseband version: ATLAS-W180914A-110.1-00641.0
Kernel version: 3.10.84-perf (gcc version 4.9.x 20150123 (prerelease) (GCC) ) jenksvc@z17sp-gitapp07 #1 Thu Dec 5 16:58:36 IST 2019
Build Fingerprint: Zebra/TC56/TC56:8.1.0/02-13-15.00-OG-U20-STD/149:user/release-keys
Build number: 02-13-15.00-OG-U20-STD
----------------------------------------------------------------------------------------------------------------------
"Settings -> System -> System Updates" I see the following info:
SPL (CPL): 2019-10-01 \NA
Build_DI: 02-13-15.00-OG-U20-STD
Fingerprint: Zebra/TC56/TC56:8.1.0/02-13-15.00-OG-U20-STD/149:user/release-keys
Baseline: 02-13-15.00-OG
Patch Level: U20
It looks to me like we're on a 2019 version of build? Is that correct? What would be the latest one, and how can I update the phone to it?
-- Thanks
Yes, looks like you're on the 2019 release. You can download the latest build here and the installation instructions are included within the release notes.
Got it, thanks! So I ended up downloading and installing the "Android Oreo 02-52-21.00-OG-U00 GMS Release" and the issue still persists. I thought then of updating right upto the latest Lifeguard update, but ever since the main update I've not been able to successfully connect the TC56 to my MacOS laptop. I keep getting a "Unplug the accessory using too much power to re-enable USB devices" error. (https://www.quora.com/What-do-I-do-with-this-message-Unplug-the-accessory-using-too-much-power-to-re-enable-USB-devices)