BlackBerry 10 Development Update

BlackBerry 10 Development Update
Simon Howard @simonh109
Developer Ecosystem Evangelist,
BlackBerry
Cambridge Wireless Event, London
June 10th 2014
Agenda
Native SDK
WebWorks SDK
Android Runtime SDK
Air SDK
Form factors
Wrap up
Q&A
SDKs
C++/Qt
C/C++
Cascades
Native SDK
HTML5
BlackBerry
WebWorks™
ActionScript
Adobe® AIR®
(1)
Java
™
Android
Runtime
(2)
(1) Adobe AIR SDK deprecated from 10.3.1
(2) Android apps cannot run in the Work perimeter
Native SDK
Momentics: A Nicely Evolved IDE
5
Native app structure
C/C++
QML
JavaScript
Building your Native app
 You can define your UI in
QML
 Use JavaScript for event
handling or application
logic
 Use C/C++ for application
logic or dynamic UI
Touch Interaction in QML Preview
 Introduced in IDE 2.1
 Two modes:


Selection – touching the a
control in the preview
highlights the QML
Touch – touching the control
shows responses to touch
events
 Not all behaviour shown
Profiling
 Profile C/C++ or QML
code
 Timeline and events
views
 Data captured on device
and uploaded when
needed
 Profiling more clearly
integrated in IDE 2.1
Headless apps
From BlackBerry 10.2.1 two types of headless apps are supported:
• Short-running apps are typically triggered by an event and run for a
limited amount of time (eg. downloaders for podcasts)
• Long-running apps run for a long time to monitor the device for certain
activity (eg. instant messaging clients)
Headless apps can:
• play audible notifications
• vibrate the device
• trigger instant previews
• Trigger notifications in the
BlackBerry Hub
Headless Apps:
Example Use Cases
 Short-running apps:




Offering a voucher when user
has entered a geofenced
location
Downloading file in the
background
Image processing
Coarse Location tracker
 Long-running apps:









Instant Messaging app
Email app
Precise location tracker
Activity logger
System health monitor
Music file playback
Continuous speech command
recogniser
VOIP apps
System event monitoring
Native SDK Demo
WebWorks SDK
and HTML5 development
WebWorks SDK 2.1
Apache Cordova Goodness
BlackBerry WebWorks 2.0 and 2.1 are powered by
Apache Cordova.
Porting apps built with WebWorks SDK 2.x
requires less effort than native apps, since
you can reuse many of your web assets.
This release is supported by new GUI and
command line tools, which simplify dev
cycles and reduce dev costs.
WebWorks SDK 2.1
Why it matters
Cross-Platform Capabilities
Expand your business through ease of portability to and from
the BlackBerry 10 platform by reusing many of your existing
web assets.
Simplified Development Tooling
Browser-based GUI and Command Line tooling enables quickto-market app development and deployment.
Enterprise Alignment
Cordova is a standards-based technology used not only by
WebWorks 2.x, but many leading enterprise app development
solutions such as IBM Worklight and SAP Mobile Platform.
BlackBerry WebWorks 2.1
GUI Tool
 Brower based tool
 Alternative to command
line tools
 You can for example:




Create a project
Edit the configuration
settings
Build a project & sign
Manage plugins
(WebWorks or Cordova)
BlackBerry WebWorks 2.0
Command line
 If you prefer you can use
the WebWorks tools from
the command line:
 Typical tasks:




Create & build projects
Manage devices
Run on device or simulator
Add plugins
WebWorks App Components
index.html
config.xml
Other HTML
JavaScript
source
CSS
JavaScript
Framework(s)
WebWorks apps & frameworks
Example supported frameworks:
WebWorks app
and jQuery Mobile BlackBerry 10 Theme
Using Cordova SDK instead
 Use Cordova when targeting multiple mobile platforms
 Same file structure as WebWorks
 You can still debug and test on BlackBerry 10 device or simulator
Remote Web Inspector
HTML5 tools Demo
Android Runtime SDK
and porting apps
10.3.0 Android Runtime
New feature support
Android Jelly Bean 4.3 Support
The Android runtime has been upgraded from Jelly Bean 4.2.2 to 4.3
Share Framework v2
Android apps that register with the share framework in Android will now also
appear as share targets on the BlackBerry 10 share menu. Android apps are now
able to share to BlackBerry 10 share menu targets
Accounts
Android apps that require access to an Android account are now supported
with BlackBerry 10 account integration.
Bluetooth LE
Apps that use Bluetooth Low Energy from Android API level 18 are
now supported.
10.3.0 Android Runtime
New feature support
NFC
Android apps that integrate with Near Field Communication (NFC) are now
supported. NFC support includes reading and writing tags, and sharing data
between NFC enabled devices.
Tooling update
New 2.0.3 beta tools for Android Studio, Eclipse plugin, and command-line
tools.
This update includes:
Support for newly added APIs
Updated graphical user interface for the command-line tools
Many other improvements and bug fixes.
10.2.1 Android Runtime
New feature support
Android Native support
Android apps that use shared libraries written in native-code languages, such as
C and C++, are often referred to as native Android apps. This support opens the
Android Runtime to an increased number of Android apps leveraging this
technology. Support is limited to the recommended system headers and APIs as
documented by Google. Headers and APIs outside this scope may not function
correctly.
Accessibility support
Android apps’ UI controls are now integrated with screen reader functionality, so
those who are visually impaired can hear a speech presentation of the UI.
Bluetooth support
Android apps using Android Bluetooth APIs will now work on BlackBerry 10.
Bluetooth Low Energy for Android is planned to be supported in a future OS
release. Bluetooth LE is supported in the BlackBerry 10 Native/Cascades SDK.
10.2.1 Android Runtime
New feature support
MapView v1
Android apps that use MapView from Google Maps v1 API are now supported
using OpenStreetMaps. Support for MapView v2 API is being planned for a
future release.
Share Framework v1
Android apps that register with the share framework in Android will now also
appear as share targets on the BlackBerry 10 share menu.
Spellcheck
Apps that use text input can now leverage support for spell checking and
correction as well as the ability to add words to the BlackBerry 10 dictionary.
Wi-Fi scanning
Scanning for Wi-Fi access points is now supported.
BlackBerry Tools for Android
Porting your Android app to BlackBerry 10
You can easily port your Android app using:
BlackBerry Plug-in for Android
Development Tools
•
No longer requires you to install the
Android SDK
Command-line tools
•
Include a GUI to guide you through the
repackaging process
•
Support all commands in the previous
release
Adobe Air SDK Update
AIR SDK – End of Support
 The Adobe AIR runtime will be removed from the
BlackBerry 10 OS in a future release
 Apps developed the AIR SDK will not work on devices
running BlackBerry 10 OS version 10.3.1 or later
 Option 1: Build as an Android app and repackage for
BlackBerry 10 using the Android runtime

Not appropriate if app uses AIR native extensions
 Option 2: Port the app to HTML5
Form Factors
Device Form Factors & Resolutions
 Full touch and Qwerty
keyboard
 Resolutions:



1280x768 (Z10)
1280x720 (Z30)
720x720 (Q10 & Q5)
Wrap Up
Developer Portal
Q&A
36
THANK YOU
Simon Howard
@simonh109