2 Replies Latest reply on Mar 13, 2018 8:13 AM by Hartmut Neubauer

    WT6000 EMDK Strange Error Initializing ProfileManager

    Greg Pola

      We have an WT6000 with Android 5.1.1 and EMDK 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?



        • Re: WT6000 EMDK Strange Error Initializing ProfileManager
          Greg Pola

          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.

          1 of 1 people found this helpful
            • Re: WT6000 EMDK Strange Error Initializing ProfileManager
              Hartmut Neubauer

              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)

                 // ...