I think that an approach you can evaluate is to use the Async version of the profile API to get an instance of the Profile Manager and to process the Profile.
Take a look at this discussion:
Thank you for your quick answer. Implemented the getInstanceAsync(...) but unfortunatelly, I still get the Choreographer message telling me that is skipping frames, and the delay is noticed in the Activity, taking one second or so to load. I'll keep looking for a solution and share it if I find something usefull.
BTW, here is the code I'm using to isolate the EMDK calls and have the project running on Zebra and non-Zebra devices: Implementation of Symbol EMDK to use in projects shared by Zebra and non-Zebra devices. · GitHub
Hey Alex, requesting an EMDKManger instance with getEMDKManager() must be done on the main thread. It's advised to be done in OnCreate, so it only happens one time when your app is initialized.