What's new in EMDK-X 9.0
Regarding EMDK Barcode Scanning APIs
Zebra strongly recommends the use of DataWedge for all applications that require barcode scanning. While Zebra will continue to support EMDK Barcode APIs, the efficiency and feature richness of intent-based interfaces make it a simpler alternative to app development using EMDK Barcode APIs.
DataWedge facts:
- DataWedge APIs have the same capabilities currently available in EMDK Barcode APIs.
- DataWedge intent-based APIs are easier and faster to implement than EMDK Barcode APIs.
- New features are added to DataWedge before being considered for EMDK Barcode APIs.
Learn About DataWedge
Overview
EMDK for Xamarin is an IDE extension that provides developers with a comprehensive set of tools to easily create powerful line-of-business applications for Zebra Android devices using C# skills and tools. EMDK for Xamarin includes class libraries, sample applications and source code, and all associated documentation for building applications that take full advantage of the power of Zebra devices.
EMDK-X inserts the Zebra-exclusive Profile Manager technology within the IDE, providing a GUI-based development tool for configuring Zebra devices. This allows developers to write fewer lines of code, produce fewer errors, and reduce overall development time and effort.
Supported Devices
EMDK-X has been designed to work with all Zebra mobile computers running Android.
Visit the Zebra.com Support Portal for a full list of supported Zebra devices.
Scanners and imagers
- DS2278
- DS3608
- DS3678
- DS8178
- LI3608
- LI3678
- RS507
- RS4000
- RS5000
- RS5100
- RS6000
- RS6100
NEW
New in EMDK for Xamarin 9.0
October, 2024 Update
- Supports MX 13.4†
MX 13.4 features added:
- Battery Manager adds the ability to:
- Place a device in Shelf Mode, which reduces power consumption for storage or extended periods of inactivity.
- Bluetooth Manager adds the ability to:
- Designate apps to allow or block from performing certain operations.
- Filter BLE scan results based on a Received Signal Strength Indicator (RSSI) range.
- Maintain BLE scanning filters for easy deployment based on use case.
- Power Manager adds the ability to:
- Allocate device storage for use as system RAM.
- UI Manager adds the ability to:
- Select a third-party camera app to use for capturing images.
† Requires EMDK for Xamarin plug-in 9.0.0.4, which supports Visual Studio 2019 and 2022.
June, 2024 Update
- Supports MX 13.3†
MX 13.3 features added:
- DevAdmin adds the ability to:
- Control Android Lock Screen visibility on the remote console if the Lock Screen appears on a device while being remotely controlled.
- Display Manager adds the ability to:
- Select screen resolution on the secondary display when a device is connected to an external monitor through a Zebra Workstation Cradle.
- Ethernet Manager adds the ability to:
- Set the authentication type when configuring a network connection.
- Enter the user name when configuring a network connection.
- Enter the password when configuring a network connection.
- Enter the domain name when configuring a network connection.
- Enter a mandatory client certificate to validate a user on a network.
- Enter an optional CA certificate to validate a server on a network.
- KeyMapping Manager adds the ability to:
- Set the key identifier of the clip-mount button, an accessory for the WS50 wearable computer.
- Set the keycode of the clip-mount button, an accessory for the WS50 wearable computer.
- UI Manager adds the ability to:
- Control whether to display the remote-control icon in the Status Bar when the device is being remotely controlled or viewed.
† Requires EMDK for Xamarin plugin 9.0.0.3, which supports Visual Studio 2019 or later only.
March, 2024 Update
- Supports MX 13.2, adding the features listed below.
This update requires EMDK Visual Studio extension 9.0.0.2, which supports Visual Studio 2019 or later only.
MX 13.2 features added:
- Audio Volume UI Manager adds the ability to:
- Control whether to allow the device user to show/hide the vibration icon on the Status Bar of the device.
- Cellular Manager adds the ability to:
- Controls configuration of the 5G New Radio.
- Configure Voice Over LTE settings with a JSON file.
- UI Manager adds the ability to:
- Control Large-screen Taskbar usage, which displays recent and pinned apps, plus a link to the app library.
- Control usage of the Active App List UI in the Notification panel on the device, potentially allowing the user to terminate apps running on the device.
- Identify external keyboard names using wildcard characters.
- USB Manager adds the ability to:
- Control MTP folder write access to
Android/data
andAndroid/obb
folders on the device when Media Transfer Protocol is used.
- Control MTP folder write access to
January, 2024 Update
- Supports MX 13.1, adding features listed below
EMDK-X 9.0 requires EMDK Visual Studio extension 9.0.0.1, which supports Visual Studio 2019 or later only.
MX 13.1 features added:
- Access Manager adds the ability to:
- Pre-grant, pre-deny or defer to the user access to "Dangerous Permissions."
- Allow the Android system to automatically control permission to seldom-used apps.
- Power Manager adds the ability to:
- Turn off the power on a device.
- Set Recovery Mode Access to features that could compromise a device.
- UI Manager adds the ability to:
- Turn on/off Do Not Disturb mode on a device.
- Enable/disable Inter-app Sharing on a device.
- Enable/disable configuration of Accessibility options, which can help simplify device usage for those with physical and/or visual impairments.
- Show/hide Immersive Mode pop-up warning.
- Configure Touch-and-Hold Delay for key long-presses.
- Wi-Fi adds the ability to:
- Allow an administrator to select the FTM Intervals, a preference for the frequency of updates to the Fine Timing Measurement Location on a device.
- Enable Secure Advanced Logging, which encrypts Wi-Fi Advanced logs and imposes a user-specified password for log access.
Version History
Added in v8.0
September 2023 Update
- Supports TC21, TC22, TC27, TC53 and TC73 devices running Android 13
- Supports MX versions 11.9 and 11.8, adding features listed below
- Requires update to EMDK Visual Studio extension 8.0.1.0
Minimum supported version for update is Visual Studio 2019
MX 11.9 features added:
- Access Manager adds the ability to:
- Grant permission to some Zebra apps to read app logs.
- Cellular Manager adds the ability to:
- Block incoming and/or outgoing calls
- Override call blocking after an emergency call from the device
- Network Connection Manager is a
new CSP
that allows an administrator to set preferences for connecting to cellular (WWAN) and Wi-Fi (WLAN) networks to help ensure that devices use the optimal network at all times. - UI Manager adds the ability to:
- Create Workflows to auto-launch one or more apps.
- Allocate screen-sharing percentage for Workflow apps.
MX 11.8 features added:
- Clock adds the ability to:
- Allow an administrator to set a sync threshold, specifying the maximum difference between the time on the device clock and that of its selected NTP server.
- Touch Manager adds the ability to:
- Set the Touch and Hold Delay required for a key-press to be considered a long-press.
MX 11.x features are supported only on devices running Android 11 or later.
March 2023 Update
EMDK for Xamarin Visual Studio extension 8.0.0.9 (Install or update now) (requires Visual Studio 2019 or later)
- Supports Microsoft .NET Multi-platform App UI (MAUI) cross-platform framework
- New MAUI Programmer's Guide added
- Support added for RS6100 Bluetooth scanner in Barcode and Notification APIs
- Now supports MX versions 11.6, 11.5 and 11.4, adding features listed below
Also see Developing with .NET MAUI on Zebra Android Devices from Zebra engineering.
MX 11.6 features added:
Supported only on devices running Android 11 or later.
- Audio UI Volume Manager adds the ability to:
- Control mute/vibrate usage, which limits the device user's ability to turn the features on and off.
- Battery Manager adds the ability to:
- Set Charging Mode to schedule days and times to fully charge a device.
- Specify a Maximum Charge percentage for a device battery.
- UI Manager adds the ability to:
- Configure an external keyboard num-lock key and assign shortcut actions.
- USB Manager adds the ability to:
- Configure USB Host Mode with rules for connecting peripherals without prompting the device user, for granting apps permission to access peripherals and for auto-launching apps on connection.
- Wi-Fi adds the ability to:
- Control whether to mandate a server certificate and whether the device user is permitted to bypass validation when configuring a network in the Android Settings panel.
- Select the certificate Action to use system certs or user-installed certs.
MX 11.5 features added:
Supported only on devices running Android 11 or later.
- Access Manager adds the ability to:
- Control permission to bind the notification listener, the Android service that receives system calls relating to notifications.
- Bluetooth Manager adds the ability to:
- Select the default set of peripherals to consider when the device evaluates Silent Pairing Rules created with the Remote Device Action parameter.
- DevAdmin adds the ability to:
- Control installation notifications when the Device Owner installs, uninstalls or upgrades apps.
- Enterprise Keyboard Manager adds the ability to:
- Display the microphone tab for selecting voice input.
- Select the microphone tab as the Preferred Tab whenever EKB is invoked.
- Control the keyboard width and keyboard height when the soft input panel is displayed on an external monitor.
- Hosts Manager adds the ability to:
- Set a Device Name for a device to simplify identification by apps, device users, administrators, etc.
- SD Card Manager adds the ability to:
- Control the SD Card pop-up, which prompts the device user to interact with an SD Card newly inserted into the device.
- Settings Manager adds the ability to:
- Control whether the device user can change the browser app used for viewing web pages.
- Touch Manager adds the ability to:
- Set the Device Type as 6375 platform and set Touch Modes for 6375-platform devices such as the ET40 and ET45.
- USB Manager adds the ability to:
- Control whether to allow all USB peripherals to be used when the device is in USB Host Mode or to restrict usage to peripherals as defined in Rules created by the administrator using the Custom Rules List parameter.
- Wi-Fi adds the ability to:
- Select Country codes for Azerbaijan, Bangladesh, Ghana, Gibraltar, Guernsey, Kosovo, Kyrgyzstan, Moldova, Senegal and Uganda.
- Set RF Band Selection to enable 2.4GHz and 6.0GHz bands to operate on the device.
- Select an RSSI Roaming Threshold and RSSI Delta Value to help improve the Wi-Fi user experience while roaming.
- UI Manager adds the ability to:
- Select the Role Action for the default browser app on the device.
- Wireless Manager adds the ability to:
- Control an Airplane Mode Timer, and set a length of time (in minutes) after which Airplane Mode will be automatically turned off on the device.
MX 11.4 features added:
Supported only on devices running Android 11 or later.
- Key Mapping Manager adds the ability to:
- Assign, configure and activate Double-trigger mode, which allows a key-code to be sent whenever a scan trigger is pressed twice during the specified time span.
- Power Key Manager adds the ability to:
- Show/hide the "Power Off" button on the menu that appears after long-pressing the device power button.
- Settings Manager adds the ability to:
- Control whether the device user change the app used for a given role, such as for making and taking calls.
- Touch Manager adds support for Zebra's TC53, TC58 and WS50 devices.
- UI Manager adds the ability to:
- Turn on/off the proximity sensor on the device.
- Wi-Fi adds the ability to:
- Select the 6.0GHz band to be used for device communications.
- Select 6.0GHz channels to use for communications.
- Control whether to use a Global Proxy server for all device communications.
Nov. 2022 Update
- Now supports Microsoft Visual Studio 2022 for Windows, including Community Edition.
VS2022 support requires EMDK Visual Studio extension 8.0.0.8. Install or update now. - Support added for ET40/45 and TC58 devices
- Support ends for Visual Studio 2017 for Windows and MacOS
Also new in v8.0
- Support added for TC53 devices running Android 11
See all supported Zebra devices.
MX 11.3 features added:
- App Manager adds the ability to:
- Install and upgrade “split” APKs containing multiple packages
- Select a Failure Mode, under which the device reports a failure and prevents a system Upgrade or Downgrade
- Cellular Manager adds ability to:
- Lock device to a specific Mobile Network Operator (subsidy lock)
- Work with Activation Certificates (changed from Activation Codes)
- DHCP Option Manager removes the ability to:
- Set DHCP Options 28 and 43
- Key Mapping Manager adds:
- Support for new key identifiers DELETE and INSERT
- UI Manager adds the ability to:
- Turn on/off Dark theme mode
- Control display and layout of Quick Tiles on the device
- Control user access to Quick Tile editing
- Enable/Disable Battery Saver
MX 11.2 features added:
- AudioVolumeUI Manager adds the ability to:
- Assign preset volume levels of STREAM_MUSIC for HDMI output
MX 11.1 features added:
- Bluetooth Manager adds the ability to:
- Configure BLE channel blocking rules
- Configure RF-based BLE channel blocking rules
- Cellular Manager adds the ability to:
- Reset eSIM memory
- SIM Socket Usage is deprecated (always enabled from A11 and later)
- Display Manager adds the ability to:
- Select display on which Media Projection and Key and Touch Injection operations are performed
- Power Manager adds the ability to:
- Cancel an ongoing OS upgrade or downgrade (when possible)
MX 11.x is supported only on devices running Android 11 or later.
MX 10.5 features added:
- BeaconMgr adds the ability to:
- Enable/Disable Beaconing upon battery reinsertion into a device
- Enter a Manufacturer Byte or custom value in the beacon advertising packet
- Enter a Reference RSSI for extrapolating the relative distance to a device beacon
- DevAdmin adds the ability to:
- Choose the Lock Screen Wallpaper
- Enable or limit Lock Screen Notifications from display
- Select whether the device user receives notifications when apps are installed, uninstalled or upgraded
- Display Manager adds ability to:
- Set a Secondary Display Mode for an external monitor
- Select Allowed Orientations for a device
- Select Locked Orientation positions for a device
- Show/Hide a Lock Override button on a device
- Force Resizable Windows for an app, overriding the manifest
- Force Resizable Activities for an activity, overriding the manifest
- UI Manager adds ability to:
- Set External Keyboard Layout (language) preference
- Add or replace a Keyboard Layout (language) for an external keyboard
- Enable/Disable Clipboard Share to control off-device data sharing
- Select digital assistant app to use on the device
- Specify a custom digital assistant app to use on the device
- Select a Home Screen Wallpaper
MX 10.4 features added:
- Access Manager adds the ability to:
- Grant installed apps permission to access USB and/or SD card storage
- "Pre-grant" or "pre-deny" USB/SD card storage permission to apps yet to be installed
- Key Mapping Manager adds the ability to:
- Mapping of "CL" and "FN" and "NAV_OK" keys found on some devices
- USB Manager adds the ability to:
- Configure default USB behavior when connecting device with a host PC
- Wireless Manager adds the ability to:
- BT Scanning Turn On/Off
- Wi-Fi Scanning Turn On/Off
- Location Service Turn On/Off
Added in v7.0
New Scanner.setParams()
and Scanner.getParams()
pass-through APIs allow the setting and retrieval of scanning parameters not yet implemented within the class hierarchy or those being added in the future.
A new Scanner Parameter Config API Guide explains the use of the new pass-through APIs.
Supports MX 10.3, adding the following major features and enhancements:
- New App Manager feature:
- Allow/Disallow individual app upgrades
- New Bluetooth Manager feature:
- Erase all data about paired peripherals on device
- New DHCP Option Manager feature:
- Select between DHCPv4 and DHCPv6 clients on device (or use both)
- New NFC Manager feature:
- Enable/Disable logging of NFC events on device
Added in v6.0
UDI NOTE:
Support for Unique Device Identifier (UDI) barcodes has been restored to Zebra devices running Android 10.
UDI support requires BSP 10.12.13 "Update 17" (or later).
SEPTEMBER 2020 UPDATE
EMDK for Xamarin 6.0
Now supports MX 10.2, adding the following major features and enhancements:
- New Access Manager features:
- Enter the Token received from a caller
- New Beacon Manager CSP:
- Controls Bluetooth Low Energy beacon on mobile computers
- New Bluetooth Manager features:
- Configure single pairing of accessories
- Define trusted devices
- Enhancements to silent pairing rules
- New Clock features:
- Enter date and time in local or Universal Coordinate format
- New Display Manager features:
- Control automatic screen rotation
- Enable/disable adaptive brightness
- Set device brightness level
- New KeyMapping Manager features:
- Support for additional key codes
- New License Manager features:
- Supports URI-based license sources
- New Power Manager features:
- Enable/disable/configure battery saver options
- New PowerKey Manager features:
- Set touch mode options
- New Touch Manager features:
- Support and control latest Zebra devices
- New UI Manager features:
- Show/hide percentage of battery charge on screen
- New Wi-fi features:
- Configure Fine Timing Measurement
- Control encryption options
NOTE:
MX 10.2 support requires updating the EMDK Visual Studio extension to 6.0.0.70 (or later).
JUNE 2020 UPDATE
MultiDex support added in Visual Studio 2019.
To activate MultiDex support in EMDK for Xamarin 6.0:
- Update the EMDK NuGet package to v6.0.0.58
- Compile apps using Visual Studio 2019 with MultiDex option enabled
See the EMDK-X Setup Guide for help updating.
Also Added in EMDK-X 6.0
Support for MX 9.3 adds the following features and enhancements:
- Enhanced App Manager now allows an admin to control background data usage on a per-application basis.
- Enhanced Bluetooth Manager now allows silent pairing using a Bluetooth MAC address or PIN.
- Enhanced GPRS Manager APN parameters now support IPv4, IPv6 and the IPv4/IPv6 "dual-stack" protocol.
- Enhanced Keymapping Manager now supports the "grey" key and W1 and W2 buttons.
Support for MX 9.2 adds the following features and enhancements:
- Enhanced Power Manager now allows an admin to control individual hardware wake up methods (buttons, keycodes)
- Enhanced Display Manager now allows an admin to control device font and display size.
- Enhanced Access Manager can now:
- Prevent one application from stopping another without explicit permission
- Perform remote device troubleshooting with enhanced visibility and control
- Enhanced Cellular Manager implements several new device locking mechanisms.
- Enhanced Keymapping Manager now supports:
- Intent extras
- "Rotate" and "minus" keys
API Enhancements
Enhanced Barcode Manager API now includes support for:
- OcrA, OcrB, MICRE13B, USCurrency Symbologies and the OCR label type:
- enum
OcrAVariant
inScannerConfig
- Allows selection of OcrA font variants - enum
OcrBVariant
inScannerConfig
- Allows selection of OcrB font variants ocrAVariant
parameter inScannerConfig.DecoderParams.OcrA
to set OcrA font variant. Font variant sets a processing algorithm and default character subset for the given font. Selecting the most appropriate font variant optimizes performance and accuracy.ocrBVariant
parameter inScannerConfig.DecoderParams.OcrB
to set OcrB font variant. Selecting the most appropriate font variant optimizes performance and accuracy.OcrParams
class in ScannerConfig adds the following parameters to configure decoding OCR barcodes:
•inverseOcr
- Changes the OCR behavior for white or light words on a black or dark background.
•ocrLines
– Allows selection of the number of OCR lines to decode. Supports OCR variants such as those for visas, TD1, and TD2 ID cards that automatically set the appropriate number of OCR lines.
•maxCharacters
– Allows selection of the maximum number of OCR characters (including spaces) per line to decode. Strings of OCR characters greater than the maximum are ignored.
•minCharacters
– Allows selection of the minimum number of OCR characters (not including spaces) per line to decode. Strings of OCR characters less than the minimum are ignored.
•quietZone
- Changes the quiet zone to be considered with OCR capture.
•template
- Changes the template to be used with OCR capture. Templates are used to precisely match scanned OCR characters to a desired input format. Carefully constructing an OCR template eliminates mis-decodes.
•orientation
- Specifies the orientation of an OCR string to be read.
•subset
– Allows selection of a custom group of characters in place of a preset font variant.
•checkDigitModulus
- Sets the check digit modulus value for OCR Check Digit Calculation.
•checkDigitMultiplier
- Sets OCR check digit multipliers for the character positions.
•checkDigitValidation
- Allows selection of check digit validation scheme.
- enum
- New
PresentationModeParameters
class inScannerConfig.ReaderParams.ReaderSpecific.ImagerSpecific
to set presentation mode behavior:sensitivity
- Allows the user to set the value for sensitivity during the scanning session- enum
PresentationModeSensitivity
in ScannerConfig - Allows selection of values for sensitivity between LOW, MEDIUM and HIGH.
- New
BarcodeManager.DeviceIdentifier
enum for selection of newly supported RS5100 Bluetooth scanner
Enhanced Notification Manager API now includes:
- New
NotificationManager.DeviceIdentifier
enum allows selection of the RS5100 Bluetooth scanner FinnishPostal4S
Symbology and label type- New
ScannerConfig.DecoderParams.DutchPostal
parameter supports:dutchPostal3S
with the ability to enable or disable decoding of Dutch Postal's "KIX 3S" barcodes
- New
ScannerConfig.MultiBarcodeParams
parameter supports:
reportDecodedBarcodes
with the ability to enable or disable reporting decoded barcode data in a single scan session regardless of the configured barcode count.
Now supports the Zebra RS5100 Ring Scanner
Added in v5.0
Device Support
Support added for Zebra devices running Android 8.x Oreo:
- EC30
- ET51
- ET56
- L10
- VC8300
Support added for Zebra devices running Android 9.x Pie:
- PS20
- TC52
- TC72
Support terminated for Zebra devices running Android 7.x Nougat:
- MC33
- TC20
- TC25
- TC51
- TC56
- TC70x
- TC75x
- VC80x
- WT6000
Software Support
Support added:
- Microsoft Visual Studio 2019
- Android 9.x Pie
Support terminated:
- Android 7.x Nougat
To target Zebra devices running Android 7.x Nougat, please use EMDK for Xamarin 4.0.
Deprecations:
Support for Unique Device Identification (UDI) standard barcodes such as GS1, HIBCC and ICCBBA in Barcode APIs has been deprecated; support will be terminated in Android 10 Q.
NFC Sample App
An NFC SAM sample app demonstrates usage of the NFC Secure Access Module, which allows secure communication with NFC tags from NFC-equipped Zebra devices.
API Enhancements
Enhanced Barcode Manager API adds the following features on devices running Android 8.1 Oreo and higher:
- Added
enum
and reader parameters to support DPM mode, which allows selection of the DPM mode based on the type of barcode being scanned:- New ScannerConfig
enum
DpmModes: DISABLED, MODE_1, MODE_2 - New reader parameter DpmMode in
ScannerConfig.ReaderParams.ReaderSpecific.ImagerSpecific
activates the DPM mode
- New ScannerConfig
- Added
enum
and reader parameters to support DPM illumination, providing illumination for DPM barcode reading:- New ScannerConfig
DpmIlluminationControl
enum
allows selection of the DPM illumination options: CYCLE, DIRECT, INDIRECT - New reader parameter
dpmIlluminationControl
inScannerConfig.ReaderParams.ReaderSpecific.ImagerSpecific
controls DPM illumination
- New ScannerConfig
New Features
Now supports MX 9.1, which adds the following features and enhancements:
- Enhanced UI Manager now allows an admin to:
- Control whether password characters are displayed briefly on the screen as they're entered (otherwise masked at all times)
- Enhanced App Manager now allows an admin to:
- Erase all data created by an app specified in the Package parameter
- Enhanced Power Manager now allows an admin to:
- Select hardware signals as the device wake-up method
- Select mappable keycodes as the device wake-up method
Added in v4.0
Now supports MX 9.0, which adds the following features and enhancements on devices running Android Oreo 8.1 and newer:
- Enhanced Battery Manager now allows an admin to:
- Specify a critically low battery threshold
- Enhanced UI Manager now allows an admin to:
- Control user access to the Large Key Indicator (MC93 device only)
- Turn the Large Key Indicator on or off (MC93 device only)
Also now supports MX 8.4, which adds the following features and enhancements on devices running Android Oreo 8.1 and newer:
- Enhanced GPRS Manager now allows an admin to:
- Specify the Mobile Virtual Network Operator (MVNO) type for an Access Point Name (APN)
- Specify APN MVNO Match Data
- Enhanced UI Manager now allows an admin to:
- Control user access to the On-Screen Power Button
- Control user access to the Status Bar
- Enhanced Wi-Fi CSP can now enable/disable:
- Aggregated MAC Protocol Data Unit (AMPDU)
- Gratuitous ARP address resolution protocol
- 2g Channel Bonding (40MHz-wide channel in 2.4GHz band)
- Configuration of Extended WLAN settings
Now supports Secure Access Module (SAM) APIs for conducting secure NFC transactions on Oreo-based TC77 and TC72 devices with SAM hardware.
SAM APIs can be used to:
- Enumerate available SAMs in the device
- Connect to a SAM
- Close a connection with a SAM
- Send APDU commands
- Retrieve the active SAM slot
- Check current SAM status (regardless of SAM connection status)
- Check the SAM type (supports Calypso, FeliCA and MIFARE)
Note: SAM APIs support only transceiver commands with the SAM. For NFC tag reading and tag-related transactions, Zebra recommends using the standard Android NFC APIs.
API Enhancements
Enhanced Barcode Manager API adds the following features on devices running Android 8.1 Oreo:
- Support for GridMatrix Symbology and Label type:
- ScannerConfig enum
GridMatrixInverse
describes Enable/Disable/Auto options for decoding GridMatrix barcodes with inverse reflectance. - ScannerConfig enum
GridMatrixMirror
describes Enable/Disable/Auto options for decoding mirrored GridMatrix barcodes. ScannerConfig.DecoderParams.GridMatrix
parameter inverse allows selection of an option from GridMatrixInverse enum.ScannerConfig.DecoderParams.GridMatrix
parameter mirror allows selection of an option from GridMatrixMirror enum.
- ScannerConfig enum
- Added the following
ScannerConfig.DecoderParams.Signature
decoder parameters:- width sets the width of the image.
- height sets the height of the image.
- format sets the image format.
- jpegQuality sets image quality to
.jpeg
. - bpp sets the bits-per-pixel for a monochromatic image.
- Added
ScannerConfig.DecoderParams.I2of5
decoder parameter:- febraban can enable or disable insertion of special "check" characters in the transmitted data stream of Interleaved 2 of 5 barcodes that are of length 14 and meet specific Febraban criteria.
- Added
ScannerConfig.ScanParams
scanner parameters:decodeScreenNotificationTime
sets the length of time (in milliseconds) to display the screen overlay upon successful decode.decodeScreenTranslucencyLevel
sets the percentage of translucency of the decode screen notification overlay.
- Added a
ScannerConfig.MultiBarcodeParams
parameter:instantReporting
can enable or disable instantaneous reporting of unique barcodes. Enabling this parameter ignores the value ofmultiBarcodeParams.barcodeCount
param and reports the scanned data to the user instantaneously, without waiting until the end of the scanning session.
- Added support for Bluetooth scanner DS8178:
- New
BarcodeManager.DeviceIdentifier
enum for selecting the DS8178 Bluetooth Scanner. - Digimarc decoding support for rear camera (formerly supported only on internal imagers).
- New
Deprecations
Support ends for targeting devices running Android 6.x Marshmallow. EMDK for Xamarin 3.0 was the final version to support Marshmallow targets. EMDK for Xamarin 4.0 supports only devices running Android 7.1.2 Nougat or newer.
Added in 3.0
Development Environment
- Now fully supports NuGet package management
- Now supports for Visual Studio for Mac OS
Device Support
Adds support for the following mobile computers running Android 8.1 Oreo:
- PS20 Personal Shopper
- TC52 Touch Computer
- TC57 Touch Computer
- TC72 Touch Computer
- TC77 Touch Computer
Also added support for:
- LI3608 Rugged USB scanner
- LI3678 Rugged Bluetooth scanner
- WT6000 Wearable computer running Android 7.x Nougat
- DS2278 Standard range barcode scanner
API enhancements
Applies only to devices running Android 8.1.0 (Oreo) and higher.
Enhanced Barcode Manager API
- Supports new symbologies and label types: GS1 Datamatrix and GS1 QR Code
- Differentiates between Datamatrix and GS1 Datamatrix label types
- Differentiates between QR Code and GS1 QR Code label types
- Added Digimarc decoding through a reader parameter:
- New digimarcDecoding parameter in
ImagerSpecific
class (supported on internal imagers only)
- New digimarcDecoding parameter in
- Supports character set selection, including the following new parameters in
ImagerSpecific
,CameraSpecific
andLaserSpecific
classes:characterSetSelection
- Sets the character set used to decode the returned barcode data. Generally set to match the encoding of the physical barcode to be scanned (AUTO, ISO_8859_1, Shift_JIS, GB18030, UTF_8).autoCharacterSetPreferredOrder
- Sets the preferred character set order to decode the barcode data when character set selection is set to "Auto."autoCharacterSetFailureOption
- Used as the character set (NONE, ISO_8859_1, Shift_JIS, GB18030, UTF_8) if the system cannot find a character set from the preferred order that can correctly decode the data.
- Supports Zebra DS2278 Bluetooth scanner:
- New enum under
BarcodeManager.DeviceIdentifier
for selecting the DS2278.
- New enum under
- Supports
PRESS_AND_SUSTAIN
AimType for RS6000 and RS507 Bluetooth scanners.
Personal Shopper API
- Supports
PersonalShopper
API for use with Zebra PS20 Personal Shopper device.- Supports Cradle API
- Supports Diagnostic API
Other API Enhancements
Enhanced Barcode Manager API:
- Adds support for LI3608 rugged USB scanner
- A new enum under
BarcodeManager.DeviceIdentifier
can be used to select the LI3608
- A new enum under
- Adds support for LI3678 rugged Bluetooth scanner
- A new enum under
BarcodeManager.DeviceIdentifier
can be used to select the LI3678
- A new enum under
Enhanced Notification Manager API:
- A new
getDeviceIdentifier()
method inDeviceInfo
class identifies the notification device - A new enum
DeviceIdentifier
supportsgetDeviceIdentifier()
with following values:- DEFAULT - default
- BLUETOOTH_IMAGER_RS6000 - Bluetooth imager RS6000
- EXTERNAL_VIBRATOR1 - External Vibrator
Software Support
Support for MX 8.2 provides the following enhancements:
- Enhanced UI Manager adds these new features:
- Enable/disable long-press on HOME key
- Enable/disable date in Notification panel
- Enable/disable long press on Recent Apps header icon to control access to app info
Support for MX 8.1 provides the following enhancements:
- Enhanced Power Manager adds these new actions:
- Specify an on-device file to verify an OS update
- Specify whether to suppress auto-reboot following an A/B upgrade
- Enhanced Battery Manager adds these new actions:
- Enable/disable use of Battery Swap Mode UI
- Enable/disable “battery charging” LED
- Enhanced Bug Report Manager adds a new action:
- Specify a time before expiration (in days) to store or email bug reports or send them to the cloud
- Enhanced Cellular Manager adds these new actions:
- Enable/disable user access to public land mobile network (PLMN) a device uses
- Specify the MCC/MNC network PLMN LockSet
- Show/hide PLMN lock UI
- Determine the status of PLMN lock UI
- Enable/disable Dual SIM Standby
- Get the status of DSDS
- Enhanced DHCP Option Manager adds these new actions:
- Enable/disable requests for a custom DHCP option from server
- Request or disable a specified DHCP Option
- Enable/disable sending of a custom DHCP Option to server
- Send or disable a specified DHCP Option
- Send a value with a specified custom DHCP Option
- Enhanced License Manager adds these new actions:
- Specify an Activation ID to return a license from the device
- Specify server friendly name for returning one or all licenses and for deleting license source
- Select the license source type to be used to return one or all licenses
- Enhanced Settings Manager adds these new actions:
- Enable/disable the slide out drawer for accessing Android system settings
- Enhanced UI Manager adds these new actions:
- Enable/disable Split Screen mode
- Enable/disable Do Not Disturb mode
- Enable/disable Multi-user mode
- Enhanced Wi-Fi adds these new actions:
- Enable/disable MAC address randomization
- Enable/disable Call Admission Control
- Enable/disable user control of Hotspot state (active/inactive)
Sample Code
- Code samples for EMDK for Xamarin are now available only online; sample code is no longer installed on the development host as part of the EMDK installation.
- Help files for EMDK for Xamarin are now available only online; help is no longer installed on the development host as part of the EMDK installation.
End of Support
IMPORTANT: EMDK-X 3.0 no longer targets devices running Android 5.x Lollipop or older.
DEVICES NO LONGER SUPPORTED with Lollipop (and older):
- ET5x
- MC18
- MC32N0
- MC40
- TC70
- TC75
- TC8000
- WT6000
Software Support
On Mac OS, now supports Visual Studio for Mac
Also supports MX v8.0 in Profile Manager, which added the following features:
- Enhanced App Manager adds these new actions:
- Clear Application Cache
- Enable/disable All GMS Applications on the "Safe to Disable" list
- Enhanced License Manager adds these new actions:
- Select a licensing file to be embedded in the XML
- Select a preactivated license source
- Query product-specific license information
- Specify product name to be queried
- Select the method used to supply the license .bin file
- Enhanced Power Manager adds a new action:
- Enable/disable PTT and scan buttons to wake the device from suspend mode
- Enhanced Settings Manager adds a new action:
- Enable/disable tethering and portable hotspot features
- Enhanced UI Manager adds these new actions:
- Enable/disable the Magnification Gesture
- Show/hide the Virtual KeyBoard while Physical Keyboard is active
Deprecations
SecureNFC APIs allow applications to perform secure communications with the NFC tags such as MifareDesfire, MifarePlus SL3 using the Secure Access Module (SAM). These APIs remain supported but are no longer being advanced.
The ContinuousRead class, used to enable continuous scanning, remains supported but is no longer being advanced. Zebra recommends using the
aimType
,sameSymbolTimeout
,differentSymbolTimeout
of the camera-, imager- and laser-specific reader parameters (since v2.7).The picklist field, used for enabling picklist mode, remains supported but is no longer being advanced. Use the
picklistEx
field instead (since v2.7).Configuring DataWedge using EMDK Profile Manager has been deprecated. Zebra recommends using DataWedge intent-based APIs to configure DataWedge profiles going forward (since v2.7).
No longer supports Visual Studio 2013 or Xamarin Studio (Mac/Windows)
This is the last version to support Visual Studio 2015
Added in 2.7
Enhanced Barcode Manager API:
- Supports Multi-barcode decoding
- New
MULTI_BARCODE
value inenum
ScanMode enables simultaneous decoding of multiple barcodes - New
MultiBarcodeParams
class inScannerConfig
addsbarcodeCount
parameter to set the barcode count to be scanned - New
PRESS_AND_SUSTAIN
AimType avoids canceling a read by subsequently pressing the trigger button (TC20/TC25 devices only)
Enhanced SerialComm API:
flowControlMode
under Serial Config takesRTS_CTS
,XON_XOFF
andNONE
values
Enhanced Profile Manager DataCapture:
- Supports Serial Input plug-in
- Support Zebra DS-3608 scanner
- Support for Multi-barcode decoding:
- New
Multi Barcode
Scanning Mode option in Reader parameters enables simultaneous decoding of multiple barcodes - New
Barcode count
field under Multi-barcode parameters allows a barcode count to be set
- New
- Supports sending ENTER command as a string
- Enhanced support for Inter-character delay
- New
PRESS_AND_SUSTAIN
AimType avoids canceling a read by subsequently pressing the trigger button (TC20/TC25 devices only)
Beta support for Visual Studio on Mac OS X
- Support ends for Visual Studio 2013 for Windows
- Support ends for Xamarin Studio for Mac and Windows
Support for MX 7.2 adds the following Setting Types and features:
- Enhanced Display Manager CSP:
- On VC80 devices, adds the ability to force the display to “Stay Awake” and remain on.
- Enhanced Power Manager CSP:
- Turn ON/OFF “Doze Mode” energy saving features on the device. When enabled, only specially designated apps can prevent the device from entering a low-power state to preserve battery life.
- Enhanced Remote Scanner Manager CSP:
- Supports RS-507 and DS-3608 scanners
- Enhanced Settings Manager CSP:
- Enable/Disable application notification control on devices running Android Nougat
Deprecations
Support for configuring DataWedge using EMDK Profile Manager is deprecated. Profile Manager capabilities categorized under Data Capture are still supported but will no longer be advanced. Zebra recommends using DataWedge intent-based APIs to configure DataWedge profiles going forward.
Support for the
ContinuousRead
class is deprecated. This class, which can be used to enable continuous scanning, is still supported but will no longer be advanced. Zebra recommends using theaimType
,sameSymbolTimeout
,differentSymbolTimeout
reader parameters for the device camera, imager or laser.Support for the
picklist
field is deprecated. This field, which is used for enabling thepicklist
mode, is still support but will ultimately be replaced by thepicklistEx
field.
Compatibility Notes
- When upgrading to a new version of EMDK for Xamarin, previous versions must be uninstalled. Failure to remove previous versions will result in an incomplete installation of the new extension.
- Support for KitKat (Android 4.4.3 or higher) devices has been dropped.
- For devices running Android Lollipop or higher, a device-specific update is distributed with the latest BSP or security incremental patch for that device.