I have a Problem with applying a custom profile to my app. It should be a basic thing to enable only the decoders "Interleaved 2of5" and "Code128", but it does not work.
Some things to note:
My processProfileAsync returns SUCCESS, but the scanner does not send data to the Scanner.DataListener::onData.
When I set the profile to some profile existing on the device, e.g. "DWDemo", I get FAILURE on profile processing, but am able to scan some codes (e.g. Code128). So there is some kind of fallback Profile. But this also means my code generally works.
I guess there is a Problem with the EMDKConfig.xml (see attachment), even though I used the EMDK Profile Manager to build it.
Here is how I call the profile manager (Kotlin Code).
override fun onOpened(manager: EMDKManager) { emdkManager = manager.apply { barcodeManager = getInstance(EMDKManager.FEATURE_TYPE.BARCODE) as BarcodeManager profileManager = getInstance(EMDKManager.FEATURE_TYPE.PROFILE) as ProfileManager } profileManager.addDataListener { Log.d(logTag, "ProfileManager profile name: ${it.profileName}, status: ${it.result.statusCode}") } profileManager.processProfileAsync( profilName, ProfileManager.PROFILE_FLAG.SET, arrayOfNulls(1) ) initializeScanner()}
Can someone help me to set a Profile that works for the decoder types above?
Device: TC77ML
OSX: QCT.81.8.9
MXMF: 8.2.3.1
1 Replies
Hi Felix,
There is a sample app at Data Capture - Zebra Technologies Techdocs but you may wish to take a look at the following article which details the recommended approach to achieving this through the DataWedge API:
Since that article was written EMDK 7.1 has been released which no longer documents the Data Capture profiles so you may need to refer to EMDK 6.8 documentation. I will update the article in due course.