Hello,
I'm developing an app on a TC52AX using Xamarin.
The app is auto started by Enterprise Home Screen when the device is turned on or restarts, and is used in kiosk mode.
The first image in attachment shows the display when the app is started, the camera is in autofocus mode.
In second image, approximately after 32 seconds from reboot, an icon appears in the notification bar, and the camera goes out of focus (I haven't switched to any other app or pressed any button, just the notification appears)
In third image, the notification icon, WFC Manager Service.
From this point, I'm unable to regain focus on the camera, even reconfiguring it while the app is working. I have to exit the app, and restart it manually, then it works (no interference from the WFC Manager Service anymore.
I workarounded it this way, by waiting 40s before actually initializing the camera, waiting the WFC service to start.
internal class AndroidInitializer : IPlatformInitializer
{
private IScanner _scanner = null;
public void RegisterTypes(IContainerRegistry containerRegistry)
{
Thread.Sleep(40000);
_scanner = new Scanner_Android();
containerRegistry.RegisterInstance(_scanner);
}
}
I had another 2 issues similar to this:
before the camera issue, I had a scanner issue, where I had to wait 3s at startup before initializing the scanner, and the same with EMDK
Thread.Sleep(3000);
_scanner = new Scanner_Android();
At startup, Enterprise Home Screen launches my app before the emdk or datawedge services are started, and if I initialize the scanner before that, I receive no errors, but the scanner doesn't work.
I'd love a way to be able to let EHS to start my app ONLY when all services are running.
But my main problem is with the camera and with the WFC service, what can I do that is not waiting 40s? Why it interferes with the camera? how can I disable that service?
Thanks
9 Replies
For situations like this, EHS has a delay feature that can be applied to apps and services.
Here's a link to the relevant docs:
https://techdocs.zebra.com/ehs/4-2/guide/settings/#optionalfeaturetags
Good luck and thank you for using Zebra products.
Thanks, but what about the WFC service that interferes with the camera focus? The service starts after 32s
Is there a way to disable that Zebra service?
And why it interferes in such a weird way with the camera focus?
Hi Mattia,
If you're not using WFC you can disable it via our AppMgr MX: https://techdocs.zebra.com/mx/appmgr/
Thanks,
James
Thanks James, can you elaborate on how to do that?
Should I use EMDK, choose App Manager among the features, and specify Disable Application? for which APK?
Or is there another way?
You can read a bit more about MX here: https://techdocs.zebra.com/mx/overview/
Essentially, you create an XML profile with your desired configurations (i.e. disabling WFC) and then you apply that XML profile to the device using either an EMM, StageNow or the EMDK Profile Manager APIs.
Ok, but what is the name of the WFC item to disable? I can't find any reference on WFC on those links.
should I refer it to com.zebra.wfc.service?
Using AppMgr's "Action" parameter, select "DisableApplication" (option 6) and specify WFC's package name. Package Name(s) must be specified exactly, and can be acquired from the application developer, by extracting the Package Name from the .apk file or by finding it in the device.
ACTION
https://techdocs.zebra.com/mx/appmgr/#action
PACKAGE NAME
https://techdocs.zebra.com/mx/appmgr/#package-name
As far as I understand, this WFC is a Zebra application/service preinstalled on the device
Is is not in the Application list, I can't see it in running services
The only hint I have of its existence is in the notification you can see the third screenshot of my original message
Is "com.zebra.wfc.service" the package name?
Yes, I believe that "com.zebra.wfc.service" is the package name of the Zebra Workforce Connect service.