BlackBerry 10 WebWorks SDK 2.1 Release Notes

Release: BlackBerry 10 WebWorks SDK

BlackBerry WebWorks is built on Apache Cordova, an open source development framework that lets you create applications using web technologies. By aligning with Apache Cordova, BlackBerry WebWorks apps are now easier to output to multiple platforms.

This release of the BlackBerry 10 WebWorks SDK builds upon the features provided in the previous 2.0 release.

New in this release

BlackBerry 10 WebWorks SDK web tool improvements

BlackBerry 10 WebWorks SDK web tool improvements

This release of the BlackBerry 10 WebWorks SDK features several improvements to the BlackBerry 10 WebWorks SDK web tool. The web tool now provides:

  • A new Target Management page, which allows you to manage your target devices and simulators.
  • A new Global Settings page, which allows you to define Proxy Server settings, or to specify an alternative location for your developer certificate or BlackBerry ID token.
Creating headless apps

Ability to create headless apps

A new command, create-headless, has been introduced to the CLI of the BlackBerry 10 WebWorks SDK. This command allows you to create a WebWorks app with a headless service.

Headless apps contain a standard web component and a C/C++ headless service component. The headless service is designed to run in the background on the device and respond to specified events. It has no UI, and the user cannot directly control it. A typical headless service starts as a result of a defined trigger, performs some function, and then stops, until it is triggered again.

Adding and removing plugins

New plugins added to the SDK

The BlackBerry 10 WebWorks SDK now includes two new plugins:
  • The Display plugin provides functions that allow you to control whether the screen dims while the app is in the foreground.
  • The Screenshot plugin allows your app to take a screen shot of the BlackBerry device.

New <platform> element

This release of the BlackBerry 10 WebWorks SDK supports the <platform> element. This element should be used to contain any platform-specific application information within the config.xml file to prevent issues when creating cross-platform apps.

The following elements should all be children of <platform>:
  • <icon>
  • <rim:invoke-target>
  • <rim:permissions>
  • <rim:splash>

In addition, you should include any BlackBerry specific preferences within <platform>.

What's new

Change in behavior: Permissions

Previously, when you added the com.blackberry.push plugin to your project, the tools automatically added the _sys_use_consumer_push permission. Because this permission was causing problems for enterprise push applications, this behavior has changed. If you want to access consumer push functionality, you must now explicitly add this permission by either using the SDK web tool or manually editing the config.xml file.

Modified APIs

As of BlackBerry 10 WebWorks SDK, the Window Covers API (com.blackberry.ui.covers plugin) has been modified to accommodate multiple cover sizes. If you previously used the Window Covers API, the changes to the API require you to modify your code.

The changes to the API are as follows:

  • updateCovers() now accepts a full cover object, rather than relying on previously defined values.
  • resetCover() now accepts the name of the cover to be reset
  • coverSize is replaced by getCoverSizes()
  • The following functions and properties have been removed from the API:
    • setContent()
    • setTransition()
    • labels
    • showBadges

For more information, see Window Covers.

Deprecated APIs

As of BlackBerry 10 WebWorks SDK, the following function has been deprecated:

  • blackberry.system.hasCapability(): This function was not previously functional, and has been removed completely.

Installation notes

For Mac OS X users:

Previously, if you installed on Mac OS X Mountain Lion (10.8) or later, you could not install the SDK until you changed your system preferences to allow applications to be installed from anywhere. This requirement is no longer necessary.

For Ubuntu users:

If you are installing to Ubuntu, after downloading the installer, you'll need to make it executable by running the following commands:
$ chmod u+x ./ BB10-WebWorks-SDK_<version>.bin
$ ./BB10-WebWorks-SDK_<version>.bin

The ~/.bash_profile isn't automatically used on Ubuntu, so WebWorks is not in the PATH by default. Add . ~/.bash_profile to ~/.bashrc or ~/.profile after installation.

Known Issues

JI: 16989

When creating a headless WebWorks project, the SDK erroneously fails to include two Makefiles with the C/C++ source for the headless component of the app.

To work around this issue, you can download the following files and place them into the specified folders within your WebWorks project.
  • Download the following file into the HeadlessService folder: Makefile
  • Download the following file into the HeadlessService/translations folder: Makefile
JI: 16669

If you try to add a plugin directly from a Git repository using the URI (for example, webworks plugin add, the operation may fail on Windows.

To work around this issue, first clone the repository and then add the plugin using the local path instead.

JI: 16668

After upgrading the VMware Player, the BlackBerry 10 WebWorks SDK may not detect a simulator that was paused before the upgrade. You must restart the simulator in the player before the SDK is able to automatically detect it.

JI: 15908

The tools erroneously allow you to remove a plugin from your app even if that plugin is a dependency of another plugin. The tools provide no warning when you attempt to do so. Removing a plugin dependency removes necessary APIs, and prevents your app from functioning as intended. To make your application function properly, you must re-add the necessary plugin.

Last modified: 2014-08-26

Got questions about leaving a comment? Get answers from our Disqus FAQ.

comments powered by Disqus