WT6000 EMDK Strange Error Initializing ProfileManager

We have an WT6000 with Android 5.1.1 and EMDK 6.3.23.623. When initializing the EMDK and acquiring the ProfileManager, we are getting an odd exception which prevents the creation of the ProfileManager. Here is the initialization routine we are using:

mProfileManager = ( ProfileManager ) mEMDKManager.getInstance( EMDKManager.FEATURE_TYPE.PROFILE );

This code is called after receiving the onOpened() notification after EMDK initialization. The call above results in the following exception stack trace:

03-07 16:36:17.084: E/com.symbol.emdk.personalshopper.PersonalShopperHelper(11700): Error in creating new PersonalShopper

03-07 16:36:17.084: W/System.err(11700): com.symbol.emdk.personalshopper.PersonalShopperException: Feature not supported

03-07 16:36:17.084: W/System.err(11700): at com.symbol.emdk.personalshopper.PersonalShopper.<init>(PersonalShopper.java:108)

03-07 16:36:17.084: W/System.err(11700): at com.symbol.emdk.personalshopper.PersonalShopperHelper.getInstance(PersonalShopperHelper.java:23)

03-07 16:36:17.085: W/System.err(11700): at com.symbol.emdk.EMDKManager.getInstance(EMDKManager.java:249)

...

This appears to be a defect in the EMDK on this device. Is this a known issue and what can be done to repair the device? Just update the EMDK?

Thanks!

Greg Pola
It ended up being an issue

It ended up being an issue with how our app was built with the dependency on the EMDK.jar being at compile time versus using the provided library. Unfortunately, Zebra has been changing the ordinal values of the enum EMDKManager.FEATURE_TYPE, which results in the wrong ordinal values being sent to the EMDKManager when trying to get a FEATURE_TYPE instance.

Vote: 
Vote up!
Vote down!

Points: 1

You voted ‘up’


Hartmut Neubauer
I had the same issue, and I

I had the same issue, and I added the following statements into the dependencies block of the build.gradle file

dependencies {

   def localProperties = new File(project.rootDir, 'local.properties')

   def sdkdir = null   if (localProperties.exists()) {

      Properties properties = new Properties();

      localProperties.withInputStream {

         inputStream -> properties.load(inputStream)

      }

      sdkdir = properties.getProperty('sdk.dir')

   }

   print 'SDKDIR = ' + sdkdir + '\n'

   def emdkdir = (String) sdkdir + '\\add-ons\\addon-symbol_emdk-symbol-26\\libs'   compileOnly fileTree(includes: ['com.symbol.emdk.jar'], dir: emdkdir)

   // ...

}

Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Jason Whetton
Same issue

Hi,

Was this issue ever resolved? I'm seeing the same thing with a T51.

Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Alexander Palchikov
Hi JasonCould you please

Hi Jason

Could you please provide more info about your issue? What version of Android and EMDK do you use? What error do you get?Have you tried to add changes to build.gradle file as advised in the comment above?

Alexander PalchikovSoftware Engineer, Kutir MobilityPosted on behalf of Zebra Technologies

Vote: 
Vote up!
Vote down!

Points: 0

You voted ‘up’


Log in to post comments