Overview
EMDK for Android is an extension for the Android Studio IDE that provides developers with a comprehensive set of tools to easily create powerful line-of-business applications for Zebra Android devices. EMDK for Android includes class libraries, sample applications with source code, and all associated documentation to help applications take full advantage of the power of Zebra devices.
EMDK for Android also inserts exclusive Profile Manager technology within the 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.
Requirements
The following software must be installed prior to using the EMDK for Android.
Windows:
- Microsoft Windows 7 (32-bit and 64-bit) or Microsoft© Windows 8 (32-bit and 64-bit) or Microsoft© Windows 8.1 (32-bit and 64-bit)
- Java Development Kit (JDK) v7u45 or higher
- Android Studio v2.x or higher
Mac OS X:
- Yosemite (10.10.x) | (64-bit) or El Capitan (10.11.x) | (64-bit)
- Java for OS X 2014-10x or higher
- Java Development Kit (JDK) v7u75 or higher
Notes:
- The appropriate Android SDK Platform package must be installed on the development machine in order to target the right EMDK APIs SDK add-on. For example, Android 6.0 (API 23) must be installed for targeting EMDK APIs (API 23) as Compile SDK Version in Android Studio.
- For building EMDK samples, the Android SDK Build-tools rev.23.0.x or higher must be installed.
- Prior to installing, all Android Studio sessions must be closed if already running.
Devices Supported
Mobile devices
- ET5X - Lollipop, Marshmallow
- MC18 - Lollipop
- MC32N0 - Lollipop
- MC33 - Nougat
- MC40 - Lollipop
- TC20 - Nougat
- TC25 - Nougat
- TC51 - Marshmallow, Nougat
- TC56 - Marshmallow, Nougat
- TC70 - Lollipop
- TC70x - Marshmallow, Nougat
- TC75 - Lollipop
- TC75x - Marshmallow, Nougat
- TC8000 - Lollipop
- VC80x - Nougat
- WT6000 - Lollipop
Scanners and imagers
- RS507
- RS6000
- RS5000
- RS4000
- DS3678
- DS3608
This version cannot target devices running KitKat.
New in v6.8
- Supports compiling applications to Android API level 26 with new "EMDK APIs, Android 26, rev xx (API 26)" add-on
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)
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
ProfileConfig
class has been deprecated. This class, which can be used to access profile data, remains supported but will no longer be advanced. Instead, Zebra recommends using the name-value pair function of Profile Manager or carefully modifying the Profile XML directly. Refer to the Clock Sample for information about modifying Profile XML data.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.
Components
Profile Manager
The EMDK's exclusive Profile Manager Technology is an additional advantage for developers giving you a GUI based development tool built on our open framework. This allows you to write fewer lines of code resulting in reduced development time, effort and errors. This innovative feature not only gives you easy access to critical functions such as bar code scanning and transaction processing via a magnetic stripe reader (MSR) but also functionality not available in Google's Android SDK.
Samples & Programmer's Guide
There are sample projects that are included as part of the EMDK For Android installation. You can import the project into your IDE and run on your device. Look at the Sample Guide for more details on using these samples. You can also reference the Programmers Guide for a complete walk-through of building your first EMDK For Android application.
Java APIs
The EMDK for Android offers access to the device's Barcode capabilities through traditional native Java Barcode APIs.