Develop For BlackBerry10

50 %
50 %
Information about Develop For BlackBerry10

Published on March 10, 2014

Author: KemoByte



Introduction to BlackBerry 10 and Development SDKs & Tools

Kareem ElSayed Application Development Consultant - EMEA @kemobyte Developing for BlackBerry 10 Native, Android, HTML5, Enterprise & More!

What Is BlackBerry 10?  Completely new  Not a revision or upgrade of BlackBerry 7  Secure  Designed as a mobile computing platform  Not just another mobile phone OS  Designed for people on the move; people that want to get something done  Not just consume content on the couch

BlackBerry Z30 • 5” all-touch screen • Natural Sound technology • 4G LTE • 25hrs battery life

6 • Display - 5" display, 540 x 960 pixels, 24-bit color LCD • Memory - 8 GB application storage & 1.5 GB RAM • Processor - 1.2 GHz dual-core processor • Battery - 2650 mAh non- removable battery • Rear-facing camera: 5 MP Autofocus and flash, 5x digital zoom • Front-facing camera: 1.1 MP Fixed-focus, 3x digital zoom BlackBerry Z3


Why developing for BlackBerry 10?

BlackBerry World BlackBerry World is available in 173 markets around the world More than 5 billion apps downloaded to date 9

Ecosystem Success BlackBerry is gaining momentum, with positive, and sometimes surging trends  67,000 Registered vendors (doubled since BB10 launch)  262,250 Approved Apps (Over 130,000 BlackBerry 10 apps – August 2013)  Developer satisfaction (buzz, sentiment, advocacy)  Developers now submitting up to 3 different apps to BlackBerry World.  Catalogue is expanding Games now >1/3 of BBW inventory  Carrier billing with 60+ carriers in 35 countries  Over 6.800 BBM connected apps Ecosystem Success BlackBerry World Games (1/3 of BBW)

BlackBerry World Growth

Global Top Partners – Gaming

( UK) Published Media Sports Multimedia Global – Top Partners Photo Editor Ultimate Life Church

Global – Top Partners Business and Productivity Social Networking

Middle East – Top Partners Kitabi Quran Mojawad UniDic Muhammad (PHUH) Anghami Trix Sayidarty Al Eqtisadiah Lamsa – Children’s Ebooks Emirates NBD Grand Cinema MAF Carrefour Al jazeera Sports mTadawol WeChat Tarneeb Balot

Developer Community Net Promoter Score +46 (from -43 in May 2012)1 Developer and Corporate IT sentiment towards BB10 “on-par” with all leading platforms2 Two thirds of organizations around the world planning to deploy BB10 applications3 NPS (+46) Developer Community

Ecosystem Success 38% identify BlackBerry as primary platform (Vision Mobile) Sentiment improved 63% in the past year (Pivot Point) Ecosystem Success

Money! 18

More money for devs!  4% more than iOS developers (per App / month)  >35% more than Android developers (per App / month)  Developing an app for iOS costs  21% more than Android  81% more than BlackBerry 19

FlyCraft and Pop Corny 20 ThousantSurvivalUnits:) iOS BlackBerry Android Pop Corny revenues since launch ThousantSurvivalUnits :) revenues since launch Pop Corny FlyCraft

Strong & Growing App Ecosystem C/C++ Native SDK Wide choice of programming languages Java Android Runtime C++/Qt Cascades Broad range of app dev libraries and personal appsManaging corporate... HTML5 BlackBerry WebWorks™

Ok, now let’s talk about technology!

Acquisitions 23 Social Calendaring App Distribution Smartphone Security Web Development UX / UI Design Navigation Platform OS Social Gaming Social Contacts Webkit Experts Device Mgmt. Encryption

Platform  Built on QNX Neutrino Real-time OS  Microkernel based OS  POSIX Compliant OS  (Portable Operating System Interface)  Native C/C++ Applications  Direct OpenGL / HW Access  Qt/Cascades for native development 24

Transition 25

BlackBerry 10 supports open standards and open source tools and provides enabling technologies for your choice of development environment A Platform of Choice… C/C++/Qt Native SDK & Cascades HTML5 WebWorks™ Apache Cordova Java Android™ Runtime Jelly Bean 4.2.2 26

Mobile Development from 20,000 feet 27 Native C/C++/Qt Application Developers Web Application Developers Community and Content Developers UI Framework Platform, device and cloud APIs BlackBerry 10 OS Multi- threading Memory mgmt Security BlackBerry Cascades HTML5, CSS, JavaScript Graphics …. Android Runtime Gaming Platforms

What to choose?  Background and Skills  Reuse of existing code, assets  Requirements  Cross-portfolio, cross-platform, features  Platform Capabilities  APIs, tooling, frameworks, constraints  Tools  IDE, utilities, simulation, familiarity  Support  Community, docs, samples 28

BlackBerry Native SDK

Standard • STL and POSIX compliant libraries • Screen and Windowing APIs • Gestures library • Input events library • Imaging and Compression • OpenGL ES 1.1/2.0 • OpenAL 1.1 • Freetype Font Rendering • Math • XML and SQLite Database library 30

Cross-platform Libraries • Boost: portable C++ libraries • Cocos2D-X: cross-platform 2D game framework • Box2D: 2D physics engine • Bullet : 3D physics engine • GamePlay: cross-platform 3D gaming framework • Lua: embeddable scripting language • SFML/SDL: cross-platform multimedia library. • Skia: Fast 2D rendering engine 31

Gaming Platform  Scoreloop SDK  Integrate Social Gaming Features  Solid Analytics  Cross-platform presence  Billing / Monetization feature  Payment APIs for in-Game transactions 32

BlackBerry on GitHub • Open Source Development Community • Port libraries and frameworks • Create libraries and frameworks • Collaborate and contribute • Work directly with other BlackBerry Platform Developers 33

Game Engines  Unity Technologies  Marmalade SDK  ShiVa3D Game Engine with Development tools  More Coming! 34

Development tools • GCC and GDB based tool chain • Momentics IDE - Eclipse based C/C++ Development Tools • In-built Application Debugging, Profiling and Memory Analysis • Microsoft Visual Studio plugin 36

Visual Studio Plugin  You can use the BlackBerry Native Plug-in for Microsoft Visual Studio to develop C and C++ applications for your BlackBerry 10 device or BlackBerry PlayBook tablet. 37

Links  BlackBerry Native SDK -> “Download the Native SDK” -> “Get started with Native SDK”  Blackberry Open Source 38

Cascades C++/Qt

What is Cascades?  Easy to use framework for delivering the astonishing user experience and UI  Rich set of core UI components  Built in signature effects  Pre-packaged interaction design  Easy data binding to various data sources (SQL/XML/JSON)  Ease of integration with platform services  C++ and/or QML/JavaScript® power for the same object model 40

What is Cascades? 41

Out-of-the-box Elegance 42

Cascades and Qt • Mature C++ application framework • Good APIs • Signals and Slots • Many help classes • QML • QtGui Cascades 43 Cascades

Creating UIs • Creating UIs in C++ is a lot of fun, but there are easier and faster ways to describe UI. • QML • declarative language to describe trees of Qt objects with properties (typically user interface) • Looks like JSON • Embed JavaScript as signal handlers • A different view of the same object model that C++ offers • Easily mixed with C++ • Preview your QML UI in Cascades Builder 44

Typical Cascades App JavaScript based UI logic QML based UI structure QT/C++ Backend

Any Mix Is Possible JavaScript based UI logic QML based UI structure QT/C++ Backend

Why Cascades? • For Qt Developers…. • Cascades replaces Qt Quick, Qt GUI • Cascades Builder replaces Qt Creator • Slightly different QML syntax • So, why Cascades??? • Cascades UI rendering NOT on the main thread • BlackBerry10 Look and Feel • Advanced placement management of components 47

Hello World in Cascades import bb.cascades 1.0 Page { content: Label { text: "Hello World" } } 48

Hello World in Qt Page* root = new Page; Label* label = Label::create() .text("Hello World"); root->setContent(label); Application::instance()->setScene(root); 49

Cascades IDE 50

Cascades UI Framework • Rich collection of in-built controls • Some 40+ fully customizable UI controls • Action Bar • Navigation – Tabs & Back • View specific actions • Context Menu • Item specific actions 51

UI Adaptability - Multiple Form Factors

How to create an adaptable UI?  Built in controls adapt to device type  Layouts, space quota, 9-sliced images, …  Unique (sub)set of assets per configuration

Asset selectors Based on resolution and/or visual style assets/ main_screen.qml dialog.qml picture.png icon.png 720x720/ main_screen.qml picture.png

Asset selectors Based on resolution and/or visual style assets/ main_screen.qml dialog.qml picture.png icon.png 720x720/ main_screen.qml picture.png

Asset selectors Based on resolution and/or visual style assets/ main_screen.qml dialog.qml picture.png icon.png 720x720/ main_screen.qml picture.png

Links  BlackBerry Cascades   Blackberry Open Source  57

BlackBerry WebWorks HTML5

BlackBerry10 & HTML5  Unparalleled Standards Support  Incredible Performance 59

60 HTML5 Standards Leadership…

61 HTML5 Performance Leadership… BlackBerry: 1.55s “The next closest competitor in terms of mobile browser speed takes nearly 5 seconds to load the same page” --Venture Beat * February 2014 *

HTML5 and WebWorks  Port your existing Webs to BlackBerry WebWorks • HTML5, CSS3, JavaScript • Leading in mobile browser benchmarks • Allows for cross-platform web development • Broadest portability, Native Look&Feel (BBUI.js), any IDE 62

WebWorks for BB10 • The SDK has been re-written for BlackBerry 10 – No longer based on Java or Adobe AIR – It is now based on JavaScript with a C/C++ back end – The packaging process uses node.js 63

Why HTML5 and WebWorks? Decision guidance  Utilize your existing Web experience  Re-use lots of cross platform code  Extend with BlackBerry® WebWorks™ platform to securely access native level functionality  Provides the best of both worlds  Rich hardware accelerated UI  BB10 apps built with BlackBerry® WebWorks™ behave like native apps 64

BlackBerry Web Platform  Driven by strong Web standards support  Powered by WebKit  HTML5 and CSS3  Flash 11 and WebGL  WebWorks and Cordova 65

What can you do with WebWorks? • Geolocation • Offline mode • Storage • Audio / Video • 2D Graphics • Advanced forms • Invoke • Web Workers • Notifications 67

How do I get there? Web Assets WebWorks Tools BlackBerry Applications

Custom WebWorks API • Build your own APIs – Access native layer functionality – More powerful than just HTML5 – E.g. NFC, Clipboard, Barcode, Analytics – BlackBerry 10 = C/C++ 69

HTML5 Emulator - Ripple • A multi-platform mobile emulator for testing – Chrome Extension – Render Web content similar to a web browser – Emulate device-specific APIs and capabilities – Web inspector debugging & profiling – Package and sign BlackBerry applications • Supported APIs: – WebWorks, WebWorks for Tablet OS – WebWorks for BlackBerry 10 (1.x) – PhoneGap 70

Ripple Extension 71

Web Platform Extras  AliceJS library  CSS3 hardware acceleration  WebGL  3D Graphics, OpenGL ES 2.0  Community frameworks 72

bbui.js • Designed for use with BlackBerry WebWorks • A web framework that provides a BlackBerry Look and Feel • Framework goals • Follows BlackBerry 10 UI guidelines • Efficient screen management • Focused on performance and memory optimization • Open source and collaborative • Community driven, not officially from BlackBerry 73

bbui.js - Cases 74

WebWorks SDK 2.0 BETA 75 BlackBerry WebWorks 2.0 is now powered by Apache Cordova, an open source development framework to create apps using web technologies. Porting apps built with WebWorks SDK 2.0 requires less effort than native apps, since you can reuse many of your web assets. This release is also supported by new GUI and command line tools, which will simplify development cycles and reduce development costs.

WebWorks SDK 2.0 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 quick- to-market app development and deployment. No Ripple. Enterprise Alignment Cordova is a standards-based technology used not only by WebWorks 2.0, but many leading enterprise app development solutions such as IBM Worklight and SAP Mobile Platform.

Links  SDK + Simulators   GitHub  77

Android Runtime and Packager

BlackBerry Runtime for Android™  Enable Android software stack running on the BlackBerry 10, including  Dalvik Virtual machine  Graphics and media  Structured data storage, e.g. SQLite®  Device access, e.g. GPS, accelerometer, compass…  Run at full speed directly on the OS kernel  Optimized performance; NOT virtualized  Tightly integrated with the underlying OS 79

BlackBerry Runtime for Android apps is based on Open Source Android v4.2.2 (aka Jelly Bean). Our 10.2.1 release offers significantly increased compatibility. Bring your Android app to the BlackBerry 10 platform so you can expand your user base and open up new revenue opportunities. Android Runtime What’s it all about and why does it matter?

Target Developers • Android App Developer • Only here because it is another avenue to sell their application • Heard that BlackBerry had an Android Runtime and thought they would check it out • BlackBerry Java Developer • Decided to invest in Android Java to hit both BlackBerry and Android devices • Their Java App does not use many/any BlackBerry APIs • Frustrated that we do not support Java runtime on BlackBerry anymore 81

Compatibility and Limitations  About 70-85% of all Android apps are compatible today  Not all Android APIs are supported • Hardware and OS limitations  New features recently supported: • Bluetooth (introduced in 10.2.1) • Google Maps (replaced with Open Street Maps in 10.2.1) • NFC (in 10.2.2) • Native Android Code (supported in 10.2.1)  Android Apps are limited to the personal perimeter  Full compatibility list: 82

Porting Existing Apps  4 Tool options to use • Online Conversion Tool – quickest way to get app converted • Eclipse Plug-in – For most Android developers • Command-line Tools – For advanced developers • Graphical AID – very easy to use 83 .apk in .bar out “BlackBerry has reduced barriers to entry for developers by providing a straightforward porting facility for Android apps to BlackBerry 10.” - Vision Mobile, July 2013

You can grow your user base and increase revenue by getting your Android app onto BlackBerry World. Broader Reach BlackBerry World is available in 171 markets around the world More than 5 billion apps downloaded to date

Broader Reach Revenue Opportunities % of devs who say revenue generation is a challenge 42% 22% Developers focusing primarily on the Android ecosystem are twice as likely to have challenges with revenue generation than developers focusing on the BlackBerry 10 ecosytem.* *Vision Mobile, June 2013

User discovers APK file, reviews Disclaimer, and chooses to install User acknowledges Settings and Permissions Install initiates User can open app or access via homescreen icon Broader Reach: APK Direct Install – A Closer Look 1 2 3 4

Links  Where to start  87

Built for BlackBerry

What is the Built for BlackBerry Program? Built for BlackBerry is an app designation “It signifies to users that an application fully embraces and delivers the signature BlackBerry 10 experience”

Benefits – BlackBerry World List View (Search or Top List) Built for BlackBerry Identifier placed beside star rating Touch target directs to Built for BlackBerry experience screen Feature ScreenApp Details Screen Built for BlackBerry Badge below screenshots (touch target)

Experience the Value of Carousel Placement 230.6% Increase paid downloads 39% Increase free downloads 187.9% Increase daily revenue Source: BlackBerry World Analytics

Supported Platforms C/C++ Native SDK CascadesHTML5 BlackBerry® WebWorks™ Adobe AIR

Built for BlackBerry Evaluation Criteria User Experience Performance Service Integration Security Localization


Go to Install chosen SDK(s) and Simulator Get signing keys & create BlackBerry World account Work through the tutorials, UI guidelines, other docs and samples Develop and submit your apps How do I get started?


THANK YOU Kareem ELSayed Application Development Consultant – EMEA @kemobyte

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

BlackBerry Developer

BlackBerry Developer; Blog; YouTube; Forum; Signing; Feedback; Register; Login; BlackBerry DevZone . Build for Enterprise; Build for BlackBerry World ...
Read more

Develop - BlackBerry Developer

Develop with BlackBerry Start here to learn about the different development platforms for BlackBerry apps. Learn about in-app ads and payment, and how to ...
Read more

An update for BlackBerry® 10 Developers | BlackBerry ...

BlackBerry ha publicado una actualización para desarrolladores de BlackBerry 10,es confirmando que la empresa seguirá apoyando a la plataforma.
Read more

BlackBerry 10.3 SDK Beta has Arrived | BlackBerry ...

BlackBerry 10 WebWorks SDK. BlackBerry Runtime for Android Apps. What can I expect from BlackBerry 10.3 as a developer?
Read more

BlackBerry 10 - Wikipedia, the free encyclopedia

BlackBerry 10 is a proprietary mobile operating system for the BlackBerry line of smartphones, both developed by BlackBerry Limited (formerly Research In ...
Read more

Developer Support Forums - BlackBerry Support Community Forums

Welcome to the Official BlackBerry Support Community Forums. This is your resource to discuss support topics with your peers, and learn from each
Read more

BlackBerry OS 10 – Funktionen der BlackBerry 10.3 OS ...

Laden Sie die neueste Version von BlackBerry® 10 OS auf Ihr BlackBerry 10 Smartphone herunter und entdecken Sie neue Funktionen, genießen Sie eine ...
Read more

Developer Momentum for BlackBerry 10 Continues to Grow ...

Developer Momentum for BlackBerry 10 Continues to Grow. Application developers continue to choose BlackBerry 10 as a target platform for their applications
Read more

Free & Paid BlackBerry Apps for Smartphones & Tablets ...

Welcome to the official store for BlackBerry World. Discover new apps, games, music and videos to buy or download for free.
Read more

6 Powerful PRIV Apps From BlackBerry Developer Elites ...

At BlackBerry, we have been very fortunate when it comes to developers. Not only do they love BlackBerry, but they love our BlackBerry 10 platform.
Read more