Enterprise Browser 1.7 was released in July, and there's never been a better time to upgrade. The latest version adds a slew of new and updated APIs, including a series dedicated to creating customized button and key layouts. EB 1.7 supports four new Zebra devices, including the TC51HC--which was specifically designed for healthcare workers--and adds support for Lollipop and Marshmallow running in numerous devices shown below.

1. ButtonBar API

A new Android-only ButtonBar API permits a series of custom buttons or keys to be displayed on the screen and configured to launch an app, execute a JavaScript snippet or perform other operations available to the device. Several ButtonBar API guides have been created to help with setup and configuration.

img

 

2. Device Support

EB 1.7 now supports the following new devices and/or existing devices running Android 5.0 Lollipop and Android 6.0 Marshmallow:

  • TC51HC (HealthCare) Android Marshmallow
  • TC56 Android Marshmallow
  • DS3678 Ultra Rugged Scanner (when used with Android TC51/TC51HC Marshmallow)
  • CBL-NGWT-HDVBAP-01 External Vibrator (when used with WT6000 Lollipop)
  • ET50 Android Marshmallow
  • ET55 Android Marshmallow
  • MC32 Android Lollipop
  • TC75X Android Marshmallow
  • RS5000 Ring Scanner (when used with WT6000 Lollipop)
  • RS6000 Ring Scanner when used with:
    • TC51 Marshmallow
    • TC51HC Marshmallow
    • TC8000 Lollipop
  • See all supported devices

3. WebView Control (KitKat and higher)

Enterprise Browser 1.7 now permits many features of the Android WebView to be controlled through the Config.xml file, helping to simplify access to device- and web-related security capabilities and user-experience features. EB 1.7 also increases the methods and properties provided in the WebView API.

 

New WebView Config tags

  • <LayoutLeft> - Optionally sets the horizontal start position of an EB app
  • <LayoutTop> - Optionally sets the vertical start position of an EB app
  • <LayoutWidth> - Optionally sets the width (not to exceed device screen width)
  • <LayoutHeight> - Optionally sets the height (not to exceed device screen height)

 

Other New UI-related Tags

  • <customxmlfile> - specifies the location of the CustomScript.xml, an optional file containing custom JavaScript snippets to be called by custom on-screen buttons or other app functions.
  • <JSLibraries> - can be used to inject JavaScript API libraries (ebapi-modules.js and elements.js) into the DOM of every HTML page when it's not otherwise possible or convenient to edit the source.

4. Web Security

Web security is top-of-mind for many enterprises these days, and Zebra has answered the call with 18 new config tags to give EB apps better control over cache and cookie data are storage and erasure, JavaScript code execution, whitelisting and blacklisting apps and loading data from untrusted or insecure sites.

 

  • <ApplicationCacheEnabled> - allows an HTML5 app to be stored locally for off-line operation, improved speed and reduced server load.
  • <ApplicationCacheOnExit> - controls whether to erase a cached HTML5 app upon exiting it.
  • <SetCacheMode> - controls rules for loading pages from cache vs. loading from the server.
  • <DeleteCacheOnExit> - controls whether to erase contents of the browser cache when exiting an app.
  • <DomStorageEnabled> - controls whether application data is stored locally using HTML5 Web Storage.
  • <DatabaseEnabled> - controls whether to enable the WebSQL database.
  • <GeoLocationEnabled> - controls whether location data from the device can be consumed by the EB app.
  • <JavascriptEnabled> - permits JavaScript code execution within an EB app to be toggled on and off.
  • <SaveFormData> - determines whether an app will retain data entered by a user into forms, checkboxes and other input elements.
  • <BlockNetworkImage> - prevents the app from loading images over a network while allowing non-image resources to load.
  • <BlockNetworkLoads> - prevents the app from loading all network resources, including images.
  • <ClearWebData> - determines whether WebView data stored by the EB app will be retained when app returns to the foreground after the device HOME key is pressed.
  • <NavigateToHomePage> - causes an EB app to display its Start Page when the app returns to the foreground.
  • <MixedContentMode> - security feature that can prevent loading of content from insecure sites.
  • <WebFilteringEnabled> - controls whether web sites will be filtered by the addresses specified in the related tags (below).
  • <WhiteListingUrls> - explicitly allows one or more websites to be visited by an app.
  • <BlackListingUrls> - explicitly blocks one or more websites.
  • <DeleteCookiesOnExit> - automatically erases cookies stored by Enterprise Browser when exiting.

 

Zebra also has added the following features to enhance security of the Kiosk Mode on devices running Lollipop and higher:

  • <setHomeKeyDisable> - prevents the HOME key (or capacitive button) on the device from exiting the current app.
  • <setStatusBarDisable> - prevents the status bar from being displayed (either automatically or by dragging down from the top of the screen).
  • <setBackKeyDisable> - disables the BACK key (or capacitive button), which could otherwise exit the current app and invoke the previously active app or Launcher screen.
  • <setVolumeButonDisable> - prevents the user from controlling the speaker volume using device hardware keys.
  • <setRecentAppDisable> - prevents display of the Recent Apps list, which could otherwise allow the user exit the current app by selecting one from the "recents" list.

5. Updated APIs, Guides

In addition to the ButtonBar APIs, Enterprise Browser 1.7 provides significant updates to the following APIs, guides and variables: 

  • An updated WebView API provides programmatic control over the Android WebView using new clearApplicationCache, clearCache, clearHistory, clearCookies, resizeWebviewLayout and resetWebviewLayout methods, and blockNetworkImage, blockNetworkLoads and contentHeight properties.
  • An updated Device API - adds a reboot method for Android.
  • An updated SIP API - adds disableAIIIME and resetToDefault methods for Android.
  • An updated RemoteNotification API - introduces a cancelNotification method and isLEDSupported, isBeepSupported and isVibrateSupported properties for Android.
  • An updated Barcode API - gives Android devices new resetToDefault and isParamSupported methods and properties for aimType, timesAimDuration, sameSymbolTimeout, differentSymbolTimeout, picklistEx, decodeLEDtime, decodeLEDFeedback, decodeLEDFeedbackMode, OneDQuietZoneLevel and PoorQualityDecideZoneLevel.

 

New and Updated Guides

  • A new Web Page Capture guide covers diagnostic features introduced in EB 1.7 that can capture screenshots and source code files for all app pages.
  • The new Customization guide shows how to customize the on-screen buttons on a device and how to include custom JavaScript snippets for use by the buttons or apps.
  • An updated Security Overview guide includes the new security-related Config.xml-file tags.

 

New Substitution Variables

The following new substitution variables are now supported by Enterprise Browser for use in Config.xml parameters:

  • %PRIMARYDIR% - resolves to the root directory of internal device storage (i.e. /storage/sdcard0)
  • %SECONDARYDIR% - resolves to the root directory of external storage (i.e. /storage/sdcard1)
  • %PERSISTCONFDIR% - resolves to a directory that persists after an Enterprise Reset of the device (i.e. /enterprise/device/enterprisebrowser)

 

For more information, please visit Enterprise Browser 1.7 on TechDocs.

 

Download Enterprise Browser 1.7.