Momentics IDE 2.1.2 Gold release notes

Related release notes: BlackBerry 10 Native SDK 10.3.1 Gold | Momentics IDE for BlackBerry 2.1.1 Gold | BlackBerry 10 Device Simulator

The BlackBerry 10 Native SDK and the Momentics IDE for BlackBerry are now available as separate releases, so their version numbers are distinct. The Native SDK provides all of the libraries that you need to create your apps, while the Momentics IDE provides the development and testing environment that brings it all together.

To make it easy to download the tools that you need, the BlackBerry 10 Native SDK is installed separately from the Momentics IDE. When you start the Momentics IDE, you can download and install the BlackBerry 10 Native SDK from within the IDE.


Upgrading to 2.1.2 Gold

Momentics IDE 2.1.2 Gold is a maintenance release. We've made it easier to get debug tokens and signing keys. We've also updated wizards, dialog boxes, and templates throughout the IDE. For more information, see the highlights below.

You can upgrade to Momentics IDE 2.1.2 Gold using the installer on the Downloads page, or from within your existing Momentics IDE. You can also download API level 10.3.1 Gold from within the IDE.

In the Momentics IDE, the BlackBerry 10 Device Simulator for 10.3.2 beta appears under the listing for the 10.3.1 simulators. This is only a display bug in the IDE.

Using the installer


If you're using the installer, you need to install the Momentics IDE to a unique location. You have two options for upgrading using the installer:

  • Uninstall the previous version, then install the new version. If you uninstall the previous version of the Momentics IDE, you can still download previous API levels by using the update site in the IDE.
  • Install the new version to a different location. You can install Momentics IDE 2.1.2 Gold to a different location than your current IDE and continue to work in both versions.

To download and install Momentics IDE 2.1.2 Gold and API level 10.3.1 Gold using the installer:

  1. Download Momentics IDE 2.1.2 Gold from the Downloads page.
  2. Run the installation file.
  3. Complete the installation by following the on-screen instructions.
  4. Start the Momentics IDE.
    You may be prompted to install an SDK. If you aren't, on the Help menu, click Update API Levels.
  5. Click Install for the BlackBerry Native SDK 10.3.1 API level.
  6. When the API level finishes installing, click OK.

Using the Momentics IDE


You can upgrade from Momentics IDE 2.1.1 Gold to Momentics IDE 2.1.2 Gold from within the IDE:

  • On the Help menu, click Check for Updates, and follow the instructions in the wizard.

You can also configure the IDE to look for updates automatically:

  1. In Windows and Linux, on the Window menu, click Preferences. In Mac OS, on the Momentics menu, click Preferences.
  2. Expand Install/Update and click Automatic Updates.
  3. Configure your update schedule, download options, and notification options.

Back to Top


MD5 checksum validation

An MD5 checksum file is available for releases of the Momentics IDE. You can use this file, in conjunction with any checksum tool that supports MD5, to validate the installer files that you download. Use the following link to download the MD5 checksum file for the IDE:

Momentics IDE 2.1.2 Gold checksum

Back to Top


Highlights

Screen showing the Lighting Crossfade sample app.
Screen showing the permissions highlight.
Screen showing the input methods highlight.

Create your first Cascades app

System permissions

Input methods

The Lightning Crossfade sample app has been updated. You can follow a step-by-step approach to build an app from scratch using QML or C++.

For more information, see Create your first Cascades app.

System permissions are signing controlled. You can use system permissions when your signing account has been granted access to use them.

For more information, see App permissions.

The new Input methods guide describes touch screen input, keyboard input, touch-sensitive keyboard input, and trackpad input.

For more information, see Input methods.

Back to Top


New in this release

If you notice issues when you connect to your device using the Momentics IDE, you may need to install the latest version of devicemanager.exe that can be found in the drivers folder on your device.

General improvements


This release introduces the following general improvements to the Momentics IDE:

  • Support for 10.3.1 and 10.3.2 runtime debug symbols
  • Improvements to debug token creation
  • Improvements to the creation of code signing keys
  • Simplified instructions for headless app debugging
  • Improvements to headless app debugging for the service portion of the app
  • Improvements to Launch Configuration creation, deletion, and grouping wizards
  • Improvements to BlackBerry Momentics Bug reporting

In this version of the IDE, we've removed the Adobe AIR Native extension template.

Help documentation


The following help documentation has been updated:

Input methods


The new Input methods guide describes touch screen input, keyboard input, touch-sensitive keyboard input, and trackpad input. You can find everything you need to know to provide support for user interaction on all BlackBerry 10 devices. You can read about touch propagation in Cascades controls, composite and discrete advanced gestures, physical keyboard input, BlackBerry Classic navigation keys and trackpad input, and touch-sensitive keyboard events on the BlackBerry Passport.

For more information, see Input methods.

System permissions


System permissions are signing controlled. You can use system permissions when your signing account has been granted access to use them. All restricted permissions are system permissions. However, some system permissions are granted to every developer account and don't need special approval. If you want to use a system permission in your app, you must add system="true" to the element in the Source tab of the bar-descriptor.xml file or your app cannot be signed.

For more information, see App permissions.

Updated sample app


You can create the updated Lightning Crossfade sample app by following a step-by-step approach to build an app from scratch using QML or C++. This updated tutorial features design units and static asset selection so that the UI is supported on all BlackBerry 10 devices.

For more information, see Create your first Cascades app.

Back to Top


Fixed in this release

JI: 818832

When you submitted a bug report using the Report BlackBerry Momentics Bug option and clicked Submit anonymously, some user information was sent.

JI: 814203

Changing the app display name using the Headless app template might not have worked.

JI: 812863

While debugging or profiling QML code, reading a property that hadn't been set might have displayed an error that the returned value couldn't be trusted.

JI: 803178

In Linux, when debugging using API level 10.3.1 in the Momentics IDE, debugging might have been slow or might have timed out. You might have seen the error "Cascades server failed to start".

JI: 774319

The shared library directory was not added to the Debug launch configuration.

JI: 773028

The Momentics IDE didn't save the "Indent using tabs" option for the QML editor.

JI: 769816

Some sample apps might have displayed invalid permissions in the bar-descriptor.xml file.

JI: 751064

When debugging the non-UI part of a headless app project that didn't contain a QML or JavaScript part, the debug session might have failed.

JI: 709026

If you were using the Headless app template, the headless app couldn't be started in Run-Release mode, because this mode required a signed .bar file with the _sys_headless_nostop permission.

JI: 708357

If you were debugging your headless app in the work space, you couldn't set a breakpoint in the constructor of the main.cpp file of the service part of your headless app.

JI: 700255

When clicking Help Contents > Native SDK-Cascades > Cascades Documentation (online access required), the Cascades documentation didn't appear in the Momentics IDE Help. Instead, a page was displayed indicating that the content couldn't be displayed in a frame.

JI: 643600

A Launch Group launch configuration couldn't be added using the Launch Configuration Properties dialog box.

JI: 393602

Breakpoints that you set from .gdbinit were not visible in the UI of the IDE.

Back to Top


Known issues

Installation


JI: 768588

Installing and running the Momentics IDE using VMware may not work. You can use VMware to run the BlackBerry 10 Device Simulator.

JI: 394200

When you perform a software update, you must accept the security warning about installing the unsigned software and continue the installation.

Momentics IDE


JI: -

In the bar-descriptor.xml file, the <action> element used in previous versions of the Native SDK has been changed to be used with the invocation framework. The <permission> element has been reinstated for use to control permissions for an application. If you need to add permissions to your <action> application, you must change it to use the <permission> element. For more information, see The application descriptor file DTD.

JI: -

During debug sessions, watchpoints are not supported.

JI: 934170

The System Information Logging Configuration feature does not work.
Workaround: Use the Device Log for your target. In the Console view, in the right-hand toolbar, click Open Console and then click Device Log from the drop-down list. You can select a target (device or simulator) from the dialog box.

JI: 907380

You shouldn't use the internal browser of the Momentics IDE to access untrusted sites.

JI: 895628

When using a QVariant constructor passing a QString parameter, the following exception may be produced at runtime: "Python Exception Cannot evaluate function - may be inlined." The code is still functional, but it may disconnect the GDB session when debugging on the simulator.

JI: 893519

If your debug token has expired, you can renew it or generate a new one and load it on your target BB10 device. If you want to renew the debug token, it may take two renew attempts until a new expiry date is reflected in the debug token information. If you create a new one, you should delete the expired debug token from your target device first.

JI: 884948

When using the Advanced Toolbar, if you type Welcome in the Quick Access field and select Views > Welcome, the Welcome page is not displayed.
Workaround: Click Help > Open Welcome Page or, in the Quick Access field, select Commands > Open Welcome.

JI: 822273

When running Linux, content displayed by the code assist window using the JavaScript Editor can't be read because of the lack of contrast in the window, which is set by default in the org.eclipse.wst.jsdt plugin.

JI: 818319

If you restart a debug session while debugging an app, some components of the previous debug session might not be stopped.
Workaround: Use the debug Stop button or the Stop button on the Momentics IDE toolbar to terminate the previous app.

JI: 810860

After launching your app in Run Release mode, you cannot stop it from the Momentics IDE toolbar.
Workaround: Stop it from the device or test it fully in Run/Debug mode.

JI: 809509

In the Momentics IDE, the assets.index file is not regenerated when you rename the subfolder.
Workaround: Restart the debug session.

JI: 792511

In Linux, you may encounter an error such as "No more handlers [Unknown Mozilla path (MOZILLA_FIVE_HOME not set)]" while signing the configuration in the Momentics IDE.
Workaround: See http://www.eclipse.org/swt/faq.php#browserlinuxrcp.

JI: 790460

The wrong API level and launch configuration might appear when launched with Run As.
Workaround: Delete the obsolete launch configuration for that project and launch the app again using the proper selection in the toolbar. When each project has the right launch configuration, Run As should also work if you are selecting the proper target in the 2nd screen.

JI: 788256

Sometimes when you connect to an existing BlackBerry 10 Device Simulator target, you may see a "credentials required" error.
Workaround: Recreate the simulator target.

JI: 782835

ADD

JI: 782527

The Quick-fix function cannot replace an old Cascades version with a new one.
Workaround: Delete the old imported version manually.

JI: 780347

In debug mode, an app cannot be terminated using the buttons in the Momentics IDE after debugging the app several times.
Workaround: To terminate the app and JavaScript debug process, select the app process from the launch configuration drop-down list and click the Terminate button.

JI: 780238

In debug mode, the reminder dialog box does not pop up when JavaScript debugging is disabled.
Workaround: On the Window menu, click Preferences. Expand BlackBerry > QML Debugging and Profiling, and select the Enable JavaScript Debugging check box.

JI: 776544

When debugging, if you add a breakpoint in a user interaction slot, the debugger becomes unresponsive.
Workaround: Remove the breakpoint and restart debugging.

JI: 776404

Momentics IDE 2.1.1 Gold and API level 10.3.1 Gold do not support assets with the number sign (#) in the file names.

JI: 775797

Using the 'extern "C" { ' construct in a .h or .c type project shows a syntax error compiler warning. For example, this issue occurs in the OpenGL ES 2.0 template. You can ignore this error.

JI: 774483

You can't remove a library dependency from your project using the Add Library wizard.
Workaround: Depending on your configuration, perform one of the following:

  • Update the bar-descriptor.xml file to delete the assets associated with the library, if applicable.
  • Right-click the project and click Properties. Click Project References and uncheck the included library, if applicable.
  • Right-click the project and click Properties. Expand C/C++ General > Paths and Symbols and click each tab to remove the reference for the included library, if applicable. Click Apply and rebuild the project.
  • Open every launch configuration that is created for the main project. Go to the Debugger > Shared Libraries tab to remove the paths of the shared libraries, if applicable.
JI: 773770

Libraries are not linked in the order listed in the .pro file.
Workaround: After adding the libraries, you can set the "Auto-generate config.pri" property to "Never auto-generate" or "Prompt". To do this, right-click your project and click Properties. Click QML and then change the order of the libraries in the config.pri by replacing them manually.

JI: 768823

Some libraries are not available for the BlackBerry 10 Device Simulator, such as libperipheral_discovery and libvpn_ext.
Workaround: Use a USB-connected device that is running a compatible OS version.

JI: 767348

When importing asset files from Windows, Mac OS X, or Linux, file names that are identical except for case are not imported.
Workaround: Make sure that your asset files have unique names.

JI: 763209

Unit testing multiple times in debug mode may lead to an "I/O error: Pipe broken" error.
Workaround: Restart the debugger.

JI: 752971

In Windows, you may be unable to highlight QML text by hovering over the help block content.
Workaround: If you want to copy the highlighted text from QML, hover over the help dialog box and also select the header.

JI: 751432

The Delete key on the keyboard does not clear the default RGB value from the primary color field for the Cascades theme in the bar-descriptor.xml editor.
Workaround: You can select the word "default" and start typing the hex value or enter the hex value and delete the trailing word "default".

JI: 747991

While hovering over a QML object ID during JavaScript debugging, warning messages are displayed in the Console view.

JI: 747566

If you experience longer than usual downloading time for any of the BlackBerry API levels in the Momentics IDE, you can perform one of the following:

JI: 735177

The drag-and-drop components in the QML editor do not suggest indirect possibilities of embedding components with some properties (for example, using navigation.left).
Workaround: Use code assist.

JI: 734711

Code assist may offer you code proposals that are not available for the version of the library you are importing in your QML project.
Workaround: Import the suggested library.

JI: 734650

In the QML Editing perspective, in the QML Properties view, the lightning icon may not appear.
Workaround: Expand the window horizontally to view the icon.

JI: 728835

When switching the launch target from a device to the BlackBerry 10 Device Simulator, you may get an error.
Workaround: Open and close the launch configuration by clicking the Edit icon.

JI: 725885

If you use Reset Perspective, you may see a shadow of another window.
Workaround: Restart the Momentics IDE.

JI: 715357

You can't download and import a sample app again after deleting it from your workspace.
Workaround: Restart the Momentics IDE.

JI: 701878

When creating multiple apps with the same entry-point name, launch configurations may point to the incorrect project.
Workaround: Use different entry-point names for each project in the same workspace.

JI: 685847

Code assist may not work for certain QML/C++ objects in .cpp files.
Workaround: Right-click the class name for that object and click Open Declaration.

JI: 672608

Auto-detect for a BlackBerry 10 Device Simulator may time out if you have a slow computer.
Workaround: Remove the simulator target, then add it again.

JI: 659889

If you are using the DevelopmentSupport class to test changes in your UI, and you make a change to the files in the assets subfolder while your app is running, the app on your device does not update properly.
Workaround: Delete the app on the device and run it from the Momentics IDE again.

JI: 654774

When moving your mouse over hover help, the text cursor in the QML editor may disappear.
Workaround: Click outside the editor pane.

JI: 642469

A headless app cannot be launched using the Run As/Debug As context menu.
Workaround: Use the toolbar to launch your app instead.

JI: 537275

The bar-descriptor.xml file does not work with Eclipse linked resources.
Workaround: If you are using Linux or Mac OS X, use soft link paths relative to your workspace, or copy the resources into your project.

JI: 526021

If you get the message "error in opening zip file" while updating or downloading the Momentics IDE or API levels, you may need to clear your download cache.
Workaround: Delete any files in the <full_path_to_IDE_install>/p2/org.eclipse.equinox.p2.core/cache/ folder.

JI: 515411

When using the Headless app template, if the headless app project name is longer than 18 characters, the name of the generated entry point will exceed its maximum 25 character limit and create an error.
Workaround: If you want a project name that is longer than 18 characters, you need to rename the entry point of your service.

JI: 510634

If your device goes to sleep while debugging an app, you will not be able to resume the debugging process.
Workaround: Make sure that your device is awake during the debugging process.

JI: 488794

Using the code selection feature within QML Preview, some QML components such as ActionBar, Tab, and TitleBar are not selectable.

JI: 461951

If you debug multiple projects at once, only the first project will hit the JavaScript breakpoints you set.

JI: 441349

Your project may become unresponsive when attempting to launch in debug mode while using Memory Analysis.

JI: 432658

QML Preview doesn't render text initially when a ForeignWindowControl is in the UI.

JI: 393915

The lupdate tool does not correctly handle files with names containing more than one dot.
Workaround: Do not use more than one dot when naming project files.

JI: 393904

If your app requires permissions and you launch it from the Momentics IDE, you must promptly accept the permissions on the device or the launch might time out.

JI: 393855

If you update the IP address of a BlackBerry Target and click OK without clicking Apply first, the IDE gives an error that it can't connect to the target. However, the IDE does connect.
Workaround: After updating the IP address, click Apply before clicking OK.

JI: 393848

The locked SDKs in the Update Native SDK wizard may not accurately reflect the SDKs you are using.
Workaround: Use care when uninstalling SDKs to ensure that you don't uninstall an SDK that you want to continue using.

JI: 393837

In a Linux environment, if you run the update manager and do not choose the options to switch to the newest SDK or to update the IDE, after the upgrade, the newest SDK is used by default.
Workaround: When you run the update manager, choose the option to update the IDE.

JI: 393784

On Windows 7 64-bit, QML Preview may fail to render ListView components when zooming.

JI: 393767

WebView controls don't render in QML Preview.

JI: 393763

JSDT does not show static members in code completion.

JI: 393746

When you create a project with a name that begins with a numeric value, you will see the following error: "Package ID is invalid". Project names cannot start with a numeric value and must start with a letter from a-z or A-Z.

JI: 393694

If you use the Application Profiler with the Sampling method on a target, all threads must be bound to CPU 0 because the Application Profiler only checks samples for CPU 0.

Back to Top


Known limitations

Installation


  • The Native SDK does not support Shared Install.
  • When you execute bbndk.sh to launch the Native SDK on Ubuntu 11.04 32-bit, you will receive an error:
    "QNX Compiler Configuration Error". Run the ./qde app instead.
  • By default, the Native SDK installer creates the installation folder on Windows systems at the root of the C drive in C:\bbndk. During installation, you need to provide the administrative username and password or, if you are the administrator, accept that the SDK is installing on the C drive.
  • When installing and uninstalling the Native SDK on a 64-bit Linux host computer, you may see an error regarding a missing libc.so.6 file. You can disregard this error message.
  • On Mac OS X, you may encounter an issue with incorrect permissions on the Native SDK installer executable. To launch the installation program, you will first need to manually change the permissions for the installer.
  • To run the IDE on Ubuntu 64-bit, you need to install additional libraries depending on the version of Ubuntu that you're using:

    For Ubuntu 13.10 and earlier, install the following library:

    • sudo apt-get install ia32-libs

    For Ubuntu 14.04 and later, install the following libraries:

    • sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
    • sudo apt-get install lib32stdc++6
    • sudo apt-get install libgtk2.0-0:i386 libxtst6:i386

    During the installation, after reading the agreement, type q at the : prompt and then answer yes to all of the questions.

Momentics IDE


  • It is possible that the debugger may take 5-10 minutes to launch when paired with certain devices that are running BlackBerry 10 OS version 10.2.1.
  • When you use the Memory Analysis tool, you may see an empty graph with the warning "No graphical input". This is by design for security reasons and this information is unsupported for BlackBerry 10 OS targets.
  • Standard makefile projects cannot be named "makefile". Use a different name for your project.
  • Memory leaks are reported only when an app exits normally. If it is killed or terminates unexpectedly, memory leaks will not be reported. To report memory leaks in this case, the API should be used.
  • To use pretty printers with Momentics IDE 2.1.1 Gold or earlier, you need to have an API level of 10.1 or later.
  • When running a version of Java older than 1.7 and using the command line packager (instead of the IDE), you may have problems when deploying an app that contains files using UTF-8 (international) characters in their name. Use Java 1.7 or later when deploying your app.
  • If you are running the Momentics IDE and the simulator, the simulator may respond slowly. You may need to add up to 8 GB RAM.
  • The Momentics IDE may terminate unexpectedly in WebKit when trying to show QML hover help. To disable the QML hover help completely, add the following to your qde.ini file:
    -Ddisable.qml.browser.control=true
  • The application binary interfaces for the Dinkum C++ and GNU C++ libraries are incompatible. If you link an app against both libraries, you'll get a segmentation fault.
  • If you downloaded an API in the Momentics IDE from Help > Update API Levels, you may see the error "API level modification has encountered a problem. There was an error updating the SDK". Try to install again or try to use the offline installer.

QML Preview


Using older drivers with QML Preview

Any drivers that are more than 12 months old are unsupported. Using unsupported drivers can lead to issues with rendering, such as complete disabling of the QML Preview feature. The user will also be notified about this situation by a dialog box within the Momentics IDE.
Workaround: Update to the latest drivers. This issue might occur even with newer graphics cards and the latest drivers. In this case, you should report this issue to BlackBerry developer support with as much detail as possible. You can report the issue on the BlackBerry Support Community Forums. For more information, check out Using QML Preview.

Previewing QML files when using static asset selection

Some apps use assets selectors to handle different device resolutions. If your app includes static asset selection, you need to select the matching device resolution for QML preview to render correctly.
Workaround: You should run your app on a BlackBerry 10 device or the BlackBerry 10 Device Simulator to get the most accurate view of your QML content. For more information, see Known limitations of QML Preview.

Back to Top


Previous release notes

You can find the release notes for the previous releases on the following pages:

Back to Top


Last modified: April 20, 2015

  1. 1. Download the tools

    Before you start developing, you'll need to visit the Downloads tab. Here you'll find downloads for the BlackBerry 10 Native SDK, BlackBerry 10 Device Simulator, and some other useful tools.

  2. 2. Try the sample apps

    Now featuring a filter control, the Sample apps tab allows you to search for samples by name or by feature.

    Select either the Core or Cascades radio buttons to display the samples relevant to you.

  3. 3. Educate yourself

    The Documentation tab contains tons of examples, tutorials, and best practices to guide you along the path towards building an awesome app.

    You can access all the documentation that you need in the left-hand navigation.

  4. 4. Start developing

    The Reference tab is where you'll find essential details about how to use our APIs.

    You can use the left-hand navigation to choose how you would like to browse the reference: by module, by topic, or alphabetically. If you have an idea of what you are looking for, start typing it in the Filter box.