Overview
Zebra Technologies provides devices for the enterprise to acquire, process and consume data from barcodes, magnetic stripe cards, RFID tags, smart cards, images, text and other technologies. To enable Zebra partners and customers of varying skills and requirements to make use of its devices, Zebra offers a broad array of tools designed to suit the requirements and capabilities of most any organization.
Scanning
Zebra mobile and touch computers are equipped with a variety of scanning devices, each of which can be accessed through software included with the device or with apps developed by a partner or customer. Zebra's solutions are described below in order from easiest (and with the least coding required) to the most powerful and complex.
DataWedge
PROS: Free; Easy to set up; Built into all Zebra devices; Controlled with UI or intents
CONS: Fixed feature set; Programmatic access requires coding
Zebra recommends considering DataWedge before other Zebra solutions.
DataWedge provides barcode scanning and processing services for devices running Android, and is the fastest and easiest way to perform scanning out of the box or add it to an existing app. Included with every Zebra device, DataWedge enables any app on the device to acquire scanned data without the need to access the scanner APIs directly. DataWedge can be configured in minutes to automatically activate the desired scanner or reader whenever a particular app is launched, and can modify and pass acquired data to an app according to simple or complex rules.
Go to DataWedge docs
Need help deciding between DataWedge vs EMDK? See DataWedge vs EMDK Comparison
Enterprise Browser
PROS: Build cross-platform apps with HTML5 that access device APIs; Broad device support
CONS: Requires some JavaScript coding; Longer setup times; Licensing required
Enterprise Browser is a small-footprint web browser platform that uses industry-standard HTML5 for building cross-platform scanning apps with minimal coding. Runtime settings are stored in a single config file that's simple to understand, easy to modify and suitable for mass-deployment. Tools included with the platform simplify initial on-ramping and device configuration and debugging.
Go to Enterprise Browser docs
EMDK
PROS: Most customizable solution; Complete control over all source code
CONS: Requires Java or C# coding; Potentially long setup and testing times
Organizations with access to Java and/or C# developers can use EMDK for Android and/or EMDK for Xamarin SDKs to build or modify Java or C# apps that acquire data on Android devices. Both SDKs offer simplified access to device APIs through Profile Manager, which automatically generates the XML to drive Zebra's device management layer.
Go to EMDK for Android docs
Go to EMDK for Xamarin docs
Need help deciding between DataWedge vs EMDK? See DataWedge vs EMDK Comparison
DataWedge vs EMDK Comparison
It is common for developers to be faced with the decision to choose between DataWedge or EMDK to integrate barcode scanning within their app. This comparison chart describes the differences and similarities between both, with DataWedge being the simpler route:
DataWedge | EMDK | |
---|---|---|
Differences | ||
Ease of coding | - Using Profiles: No coding required - Using Intents: Minimal coding required. Common coding practices to receive input data from intents: barcode, serial/USB port, magnetic stripe reader, Data Capture Plus |
API based - major coding required. Entirely different code required to receive each input data: barcode, serial/USB port, magnetic stripe reader, Data Capture Plus |
Format scanned data | - Using Profiles: Configuration available with Basic/Advanced Data Formatting - Using Intents: Some coding required |
Requires app coding |
API responsiveness | Responses pass through Android’s intent mechanism | Responses received through API callback |
Soft Scan Trigger (scan via screen tap) | Using Profiles: Data Capture Plus profile enables areas of the device screen to be designated as scan triggers (ie. floating button, full-screen mode, button-only mode) Using Intents: Use Soft Scan Trigger API |
Requires app coding |
Configuration deployment | Deploy profile(s) via EMM | EMDK is an SDK and is configured by the consuming application |
Impact of abnormal app behavior | Does not impact any other apps since resources are managed by DataWedge | Locks down scanner resources if app exits or crashes without releasing the scanner, after which a device reboot is required. See Scanner resource handling below. |
Development environment | - Using Profiles: None required - Using Intents: Standard Android development environment required |
EMDK setup required in addition to standard Android or Xamarin development environment |
Ease of scan behavior modification | - Using Profiles: Easily accomplished with no app code modification required - Using Intents: Code modification required |
Requires app code modification |
Scanner resource handling | DataWedge handles major resource handling including profile switching, acquiring and releasing scanner, and activity switching between the foreground and background | The hardware scanner must be shared between applications. Developer must take account of their application going to the background or coming to the foreground to release and re-acquire the scanner resource as required. |
Asynchronous or synchronous calls | Calls are asynchronous – the app is required to wait for the intent data. Status notification is recommended to determine status of parameter changes. | Some calls are synchronous (i.e. device enumeration, getconfig, setconfig) and some are asynchronous (i.e. enable/disable scanner, read) |
Special thread handling | None required | App cannot block main thread during EMDK initialization |
Similarities | ||
Scanner capability | Full control with use of intents | Full control with use of APIs |
Documentation | Available online | Available online |
Device dependencies | Built-in | |
Barcode scanning and camera capture in same activity | Requires app coding to use intents for barcode scanning and camera capture within the same activity simultaneously | Scanner resource must be released prior to using the device camera |
Status notifications | An app can register with DataWedge to receive notifications for events such as scanner status changes, profile switching and configuration updates | OnStatus() notifications provide scanner status information |
Printing
Zebra output solutions range from simple line printing with Zebra's printers to the development of printer apps and firmware using the Link-OS Multiplatform SDK.
Printing from Enterprise Browser
LinkOS Code Samples
Security
Application Security
Zebra security ranges from simple, feature-based solutions to whole-device lock-down with or without encryption.
Enterprise Home Screen is a simple way to control user access to apps, settings and files on Zebra devices running Android without the need for custom code.
Enterprise Browser security options protect devices and data with a variety of solutions including basic authentication, client-server certificates, encryption, kiosk mode, and settings lock-out.
Zebra StageNow manages security with Zebra Mobility DNA, which can lock down peripherals, keys and ports, implement application whitelists and blacklists and set up services to monitor threats and send alerts in real time. Learn more about Zebra Mobility DNA features, which can:
- Verify the signature of an app before launching
- Set up encryption on a device
- Control device persistence settings
- Lock down one or more device cameras
- Prevent use of the device Clipboard, Notification panel and other potential leaks
Whole-device Security
Create a Single-Use Device (Kiosk)
When a device will be dedicated to a single task—an information kiosk, patient check-in system or price scanner, for example—Zebra's Enterprise Home Screen might be a good choice. Kiosk Mode opens one app in full-screen mode and prevents exiting when BACK and HOME keys are pressed.
Learn more about [EHS Kiosk Mode](../ehs/2-6/guide/features/#kioskmode)App Migration
When there's a need to move an existing app from one device platform to another—such as from Windows CE to Android—Zebra offers multiple solutions to help ease the transition. Migration tools can put a new face on older apps or help move apps from older platforms to new ones.
Enterprise Browser
EMDK for Xamarin
Migrate a C# Windows Mobile/CE app
Feedback
Have an idea for a feature? Let Us Know!