Introduction to Mobile
Development on
BlackBerry 10
Luca Filigheddu
Head of Developer Evangelism EMEA
BlackBerry
@filos
What Is BlackBerry 10?
Completely new


Not a revision or upgrade of BlackBerry 7

Secure
Designed as a mobile computing
...
BlackBerry Z30
• 5” all-touch screen
• Natural Sound technology

• 4G LTE
• 25hrs battery life
Why developing for BlackBerry 10?
Ecosystem Success
BlackBerry is gaining momentum, with positive,
and sometimes Success
Ecosystem surging trends






...
BlackBerry World
Over 130,000 BlackBerry
BlackBerry World 10 apps
50+% month over month sales
increase
Developers now subm...
Growth
BlackBerry World
Developer Community
Developer Community
Net Promoter Score +46 (from -43 in May 2012)1
Developer and Corporate IT sentimen...
Ecosystem Success
Ecosystem Success
Sentiment
improved 63%
in the past year
(Pivot Point)

38% identify
BlackBerry as
prim...
Money!

11
More money for devs!

4% more than iOS developers (per App / month)
>35% more than Android developers (per App /
month)
De...
FlyCraft and Pop Corny

13
Ok, now let’s talk about technology!
Acquisitions

Webkit Experts

Platform OS

Web Development

Social Contacts

App Distribution

UX / UI Design

Device Mgmt...
Platform
Built on QNX Neutrino Real-time OS
Microkernel based OS
POSIX Compliant OS


(Portable Operating System Interfac...
Transition

17
BlackBerry 10 SDKs

Java
C/C++

HTML5, CSS, JavaScript

ActionScript

Native SDK

WebWorks

Adobe AIR

Android
Runtime
18
What to choose?
Background and Skills
 Reuse of existing code, assets
Requirements
 Cross-portfolio, cross-platform, fea...
BlackBerry Native SDK
Standard
•
•
•
•
•
•
•
•
•
•

STL and POSIX compliant libraries
Screen and Windowing APIs
Gestures library
Input events li...
Cross-platform Libraries
•
•
•
•
•
•
•
•

Boost: portable C++ libraries
Cocos2D-X: cross-platform 2D game framework
Box2D:...
Gaming Platform
Scoreloop SDK






Integrate Social Gaming Features
Solid Analytics
Cross-platform presence
Billing /...
BlackBerry on GitHub
•
•
•
•
•

Open Source Development Community
Port libraries and frameworks
Create libraries and frame...
Game Engines
Unity Technologies
Marmalade SDK
ShiVa3D Game Engine with Development tools
More Coming!

25
Unity Offer!

Have a Unity PRO License? Get the BlackBerry Plugin for free!


Worth $1.500
Get also a BlackBerry Z10 for ...
Development tools
• GCC and GDB based tool chain
• Momentics IDE - Eclipse based C/C++ Development
Tools
• In-built Applic...
Visual Studio Plugin
You can use the BlackBerry Native Plug-in for Microsoft
Visual Studio to develop C and C++ applicatio...
Links
BlackBerry Native SDK developer.blackberry.com/native
-> “Download the Native SDK”
-> “Get started with Native SDK”
...
Cascades

C++/Qt
What is Cascades?

Easy to use framework for delivering the astonishing
user experience and UI








Rich set of c...
What is Cascades?

32
Out-of-the-box Elegance

33
Cascades and Qt
•
•
•
•
•
•

Mature C++ application framework
Good APIs
Signals and Slots
Many help classes
QML
QtGui Casc...
Creating UIs
• Creating UIs in C++ is a lot of fun, but there are easier
and faster ways to describe UI.
• QML
•

•

decla...
Typical Cascades App

JavaScript
based UI logic

QML based UI
structure
QT/C++
Backend

http://developer.blackberry.com
Any Mix Is Possible

JavaScript
based UI logic
QML based
UI structure
QT/C++
Backend

http://developer.blackberry.com
Why Cascades?
• For Qt Developers….
•
•

•

Cascades replaces Qt Quick, Qt GUI
Cascades Builder replaces Qt Creator
Slight...
Hello World in Cascades
import bb.cascades 1.0
Page {
content: Label {
text: "Hello World"
}
}
39
Hello World in Qt
Page* root = new Page;
Label* label = Label::create()
.text("Hello World");
root->setContent(label);
App...
Cascades IDE

41
Cascades UI Framework
• Rich collection of in-built controls
• Some 40+ fully customizable UI controls
• Action Bar
• Navi...
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...
Asset selectors
Based on resolution and/or visual style
assets/
main_screen.qml
dialog.qml
picture.png
icon.png
720x720/
m...
Asset selectors
Based on resolution and/or visual style
assets/
main_screen.qml
dialog.qml
picture.png
icon.png
720x720/
m...
Asset selectors
Based on resolution and/or visual style
assets/
main_screen.qml
dialog.qml
picture.png
icon.png
720x720/
m...
Links
BlackBerry Cascades


developer.blackberry.com/cascades

Blackberry Open Source


blackberry.github.com/cascades/s...
BlackBerry WebWorks

HTML5
BlackBerry10 & HTML5
Unparalleled Standards
Support
Incredible Performance

50
HTML5 and WebWorks
Port your existing Webs to BlackBerry WebWorks
• HTML5, CSS3, JavaScript

• Leading in mobile browser b...
WebWorks for BB10
• The SDK has been re-written for BlackBerry 10
–
–

–

No longer based on Java or Adobe AIR
It is now b...
Why HTML5 and WebWorks?
Decision guidance
Utilize your existing Web experience


Re-use lots of cross platform code

Exte...
BlackBerry Web Platform






Driven by strong Web standards support
Powered by WebKit
HTML5 and CSS3
Flash 11 and We...
Some inspiration: WebGL

http://www.gooengine.com
What can you do with WebWorks?
• Geolocation
• Offline mode

• Storage
• Audio / Video
• 2D Graphics
• Advanced forms
• In...
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. ...
HTML5 Emulator - Ripple

• A multi-platform mobile emulator for testing
–
–
–
–
–

Chrome Extension
Render Web content sim...
Ripple Extension

60
Web Platform Extras




AliceJS library

CSS3 hardware acceleration
WebGL

3D Graphics, OpenGL ES 2.0
Community frame...
bbui.js
• Designed for use with BlackBerry WebWorks
•

A web framework that provides a BlackBerry Look
and Feel

• Framewo...
bbui.js - Cases

63
WebWorks SDK 2.0 BETA
BlackBerry WebWorks 2.0 is
now powered by Apache Cordova,
an open source development
framework to cr...
WebWorks SDK 2.0
Why it matters

Cross-Platform Capabilities
Expand your business through ease of portability to and from
...
Links
SDK + Simulators


http://developer.blackberry.com/html5

GitHub


https://github.com/blackberry/BB10-WebWorks-Sam...
Android Runtime and Packager
BlackBerry Runtime for Android™

Enable Android software stack running on the
BlackBerry 10, including






Dalvik Vi...
Android Runtime
What’s it all about and why does it matter?

BlackBerry Runtime for Android apps is based on
Open Source A...
Target Developers
• Android App Developer
•
•

Only here because it is another avenue to sell their application
Heard that...
Compatibility and Limitations
About 70-85% of all Android apps are compatible today
Not all Android APIs are supported
• H...
Porting Existing Apps
.apk in

.bar
out

“BlackBerry has reduced barriers to entry for developers by providing a
straightf...
Broader Reach
You can grow your user base and increase revenue by
getting your Android app onto BlackBerry World.

BlackBe...
Broader Reach
Revenue Opportunities

Developers focusing primarily on
the Android ecosystem are twice
as likely to have ch...
Broader Reach:
APK Direct Install – A Closer Look

1
User discovers APK file,
reviews Disclaimer, and
chooses to install

...
Links
Where to start


http://developer.blackberry.com/android

76
Adobe AIR
Love is in the AIR

Adobe AIR
 Free and open source SDK



Open Source SDK
Cross platform (Mobile desktop, mobi
Cross p...
Developing with Adobe AIR
Easily adapt and deploy existing content
Native BlackBerry® PlayBook™ tablet and BlackBerry 10
c...
Why Use AIR?
AIR Community
 Lot of Learning Resources

Fast for create games
 Different Frameworks, Engines
& Libraries
...
Tools and getting started
Flash Builder 4.6 and 4.7

Powerflasher FDT (Eclipse based)

Adobe AIR SDK with Adobe ActionScri...
BlackBerry 10 UI
QNXSkins.ane stores the assets for the skins





Device deployed ANE
Correctly sized assets are store...
Support
In BlackBerry 10 10.1, Adobe AIR 3.1 is supported
Adobe AIR 3.5 and Stage 3D supported in BlackBerry
10.2

83
Links
SDK + Simulators


http://developer.blackberry.com/air

GitHub


https://github.com/blackberry/Samples-for-AIR

84
Built for BlackBerry
What is the Built for BlackBerry Program?

Built for BlackBerry is an app designation
“It signifies to users that an appli...
Benefits – BlackBerry World
List View (Search or Top List)

App Details Screen

Feature Screen

Built for BlackBerry Ident...
Experience the Value of Carousel Placement

230.6%

Increase

39%

Increase

paid downloads
free downloads

Increase

187....
Supported Platforms

HTML5 BlackBerry®
WebWorks™

Cascades

http://developer.blackberry.com/builtforblackberry

C/C++
Nati...
Built for BlackBerry Evaluation Criteria

User Experience

Performance

Localization

Service Integration

Security

http:...
Games

http://developer.blackberry.com/builtforblackberry
THANK YOU
Luca Filigheddu
Head of Developer Evangelism EMEA – BlackBerry
@filos
Sviluppare per una piattaforma mobile aperta: opportunità e sfide
Upcoming SlideShare
Loading in...5
×

Sviluppare per una piattaforma mobile aperta: opportunità e sfide

724

Published on

La piattaforma BlackBerry 10 è attualmente la piattaforma mobile più aperta presente sul mercato per quanto riguarda le tecnologie di sviluppo supportate. Gli sviluppatori possono agilmente portare il proprio codice su BlackBerry 10 con il minimo sforzo e, grazie ai numerosi famework e SDK a disposizione, averea portata di mano un’ambia scelta di strumenti per sfruttare al meglio la potenza del nuovo sistema operativo. Quale strategia adottare per portare la propria app su BlackBerry 10? Quali le opportunità? Come portare facilmente applicazioni Android su BlackBerry 10?

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
724
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • 50+% month over month sales increases have not only confirmed BlackBerry’s momentum, it has also caused balance of app types to shift - not traditionally known as a gaming platform, games now account for more than 1/3 of the inventory in BlackBerry World. Current inventory is 262,250 apps from over 67,000 registered vendors:128,745 BlackBerry 10 apps101,050 BlackBerry OS apps49,200 BlackBerry PlayBook apps6,775 BBM connected appsStorefront reach in 173 countries with over 4.5 Billion+ total downloadsFlexible payment services with carrier billing with 60+ carriers in 35 countries
  • 50+% month over month sales increases have not only confirmed BlackBerry’s momentum, it has also caused balance of app types to shift - not traditionally known as a gaming platform, games now account for more than 1/3 of the inventory in BlackBerry World. Current inventory is 262,250 apps from over 67,000 registered vendors:128,745 BlackBerry 10 apps101,050 BlackBerry OS apps49,200 BlackBerry PlayBook apps6,775 BBM connected appsStorefront reach in 173 countries with over 4.5 Billion+ total downloadsFlexible payment services with carrier billing with 60+ carriers in 35 countries
  • 1 - Pivot Survey of BB developers, Pivot Point Research, May 2012-August 2013, Pivot Survey of Corporate IT professionals, Pivot Point Research, June-August 2013, Internal BlackBerry Data2 - Pivot Survey of the global developer community, January-June, 20133 - August 2013 Pivot survey of 300 corporate IT professionals across North America, Europe, Latin America and Asia Pacific
  • BlackBerry 10 has had a game-changing impact on the developer ecosystem.BlackBerry is considered a lead development platform, with 38% of app developers identifying BlackBerry as their primary platform1Through FY13, the overall BlackBerry 10 buzz among developers increased dramatically with a 63% improvement in developer sentiment towards BlackBerry B10 over the past year2The BlackBerry Developer Program is ranked #13Sources:Vision Mobile – Developer Economics Survey, The Tools Report (January 2013)Pivot Point Research Group - Developer Community Sentiment Tracker, March 2013Strategy Analytics – App Developer Survey, 2H2012
  • Quick few slides on developing for different resolutions and form factorsDiscuss the differences between Z10 and Q10, and commitment to 16:9 and 1:1 ratios
  • Leverage the built-in controls as much as possible, because we have made them adaptable to the device the app is running onUse layouts properly and with rotation and different form factors in mind9-sliced images help with re-sizing by breaking down a picture into sections and scaling based on specified instructionsAsset subset using the Asset Selector (next slide)
  • Assets that are named the same as objects in the main assets, and placed in a folder titled 720x720 will be selected for use on Q10Must be using 10.1 SDK
  • Assets that are named the same as objects in the main assets, and placed in a folder titled 720x720 will be selected for use on Q10Must be using 10.1 SDK
  • Assets that are named the same as objects in the main assets, and placed in a folder titled 720x720 will be selected for use on Q10Must be using 10.1 SDK
  • BlackBerry is committed to Android developers and to delivering a best in class app experience for BlackBerry 10 users. This commitment is further realized with the 10.2.1 Android Runtime release. The latest Android Runtime is based on Open Source Android (v4.2.2), aka Jelly Bean. Our 10.2.1 release offers significantly increased compatibility. So now is your best time to test your app in the new runtime and then bring it over to the BlackBerry 10 platform.
  • Now that your Android app runs better than ever on the BlackBerry 10 platform, you can take advantage of BlackBerry’s very app-hungry customer base.BlackBerry World is available in over 170 markets across the globe and over 5 billion apps have been downloaded to date.
  • The data from Vision Mobile’s June 2013 report, which is based on surveys completed by over 5,200 developers across the globe, show that Android developers are significantly more challenged than BlackBerry 10 developers when it comes to revenue generation opportunities. Bringing your Android app to the BlackBerry 10 platform opens up a new base of end users and potential revenue generation opportunities with little up-front effort and time required on your part. Note to presenter:The link to this specific study is included here (BlackBerry internal link):http://connections.rim.net/wikis/home?lang=en_US#/wiki/Wc4ec85d0b6f4_4d45_8dec_f993efdb25d6/page/Research
  • With 10.2.1, users can discover and access supported Android apps via traditional channels used by APK application vendors – web portals and curated Android marketplaces that support access from BlackBerry 10 devices.For APK files, which are obtained outside of BlackBerry World and are not made available by BlackBerry, users must review a disclaimer and acknowledge Settings and Permissions before the application will be installed. Although users can install APK files on BlackBerry devices running the 10.2.1 operating system, BlackBerry does not give any assurances regarding the performance or security of such files.
  • WHAT – purpose of BFBManny: Built for BlackBerry is an app designation. It lets users know that an application fully embraces and delivers the signature BlackBerry 10 experience. This program provides developers with specific criteria that allows them to identify and deliver this experience in their applications.Adam: Why would developers want their apps to have the Built for BlackBerry designation?
  • WHY – BenefitsManny: A key benefit of the program is being featured in the BlackBerry World Carousel. For many of our partners, this has really made a difference. Built for BlackBerry apps are identified using exclusive icons and badges and are featured prominently in search results. 
  • WHY – BenefitsAdam: In fact, when featured in the BlackBerry World carousel, Built for BlackBerry apps average an increase in paid daily downloads of 230%. Free daily downloads have increased 39%. Paid daily revenue has increased by 187%
  • HOW – platformsManny: First, in order to qualify for Built for BlackBerry, you must create a BlackBerry 10 application using one of the four supported platforms: HTML5, Cascades, NDK, or Adobe Air.
  • Manny: Next, your application must comply with all of the Built for BlackBerry criteria. These are: user experience, performance, service integration, security and localization.Adam: Each of these criteria represent the building blocks of good application design and define the BlackBerry 10 application experience.
  • Adam: Games also follow many of the same criteria for applications but they do have a few different criteria. For example, user settings should be preserved between restarts; or the game should pause if a phone call is received.Manny: Also, if a game engine is used, it must be one that was designed & tested for BlackBerry 10 like GamePlay, Unity, Marmalade, Shiva or Cocos2d-x.
  • Sviluppare per una piattaforma mobile aperta: opportunità e sfide

    1. 1. Introduction to Mobile Development on BlackBerry 10 Luca Filigheddu Head of Developer Evangelism EMEA BlackBerry @filos
    2. 2. 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 http://developer.blackberry.com
    3. 3. BlackBerry Z30 • 5” all-touch screen • Natural Sound technology • 4G LTE • 25hrs battery life
    4. 4. Why developing for BlackBerry 10?
    5. 5. Ecosystem Success BlackBerry is gaining momentum, with positive, and sometimes Success Ecosystem surging trends      67,000 Registered vendors (doubled since BB10 launch) 262,250 Approved Apps 5B Total Downloads Storefront reach -173 countries Developer satisfaction (buzz, sentiment, advocacy)
    6. 6. BlackBerry World Over 130,000 BlackBerry BlackBerry World 10 apps 50+% month over month sales increase 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 Games (1/3 of BBW) BlackBerry World
    7. 7. Growth BlackBerry World
    8. 8. Developer Community 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)
    9. 9. Ecosystem Success Ecosystem Success Sentiment improved 63% in the past year (Pivot Point) 38% identify BlackBerry as primary platform (Vision Mobile)
    10. 10. Money! 11
    11. 11. 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 12
    12. 12. FlyCraft and Pop Corny 13
    13. 13. Ok, now let’s talk about technology!
    14. 14. Acquisitions Webkit Experts Platform OS Web Development Social Contacts App Distribution UX / UI Design Device Mgmt. Social Calendaring Encryption Navigatio Social Gaming Smartphone Security 15
    15. 15. 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 16
    16. 16. Transition 17
    17. 17. BlackBerry 10 SDKs Java C/C++ HTML5, CSS, JavaScript ActionScript Native SDK WebWorks Adobe AIR Android Runtime 18
    18. 18. 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 19
    19. 19. BlackBerry Native SDK
    20. 20. 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 21
    21. 21. 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 22
    22. 22. Gaming Platform Scoreloop SDK     Integrate Social Gaming Features Solid Analytics Cross-platform presence Billing / Monetization feature Payment APIs for in-Game transactions 23
    23. 23. 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 blackberry.github.com 24
    24. 24. Game Engines Unity Technologies Marmalade SDK ShiVa3D Game Engine with Development tools More Coming! 25
    25. 25. Unity Offer! Have a Unity PRO License? Get the BlackBerry Plugin for free!  Worth $1.500 Get also a BlackBerry Z10 for Free  https://unity3d.com/contest/blackberry  26
    26. 26. 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 27
    27. 27. 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. 28
    28. 28. Links BlackBerry Native SDK developer.blackberry.com/native -> “Download the Native SDK” -> “Get started with Native SDK” Blackberry Open Source blackberry.github.com 29
    29. 29. Cascades C++/Qt
    30. 30. 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 31
    31. 31. What is Cascades? 32
    32. 32. Out-of-the-box Elegance 33
    33. 33. Cascades and Qt • • • • • • Mature C++ application framework Good APIs Signals and Slots Many help classes QML QtGui Cascades Cascades 34
    34. 34. 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 35
    35. 35. Typical Cascades App JavaScript based UI logic QML based UI structure QT/C++ Backend http://developer.blackberry.com
    36. 36. Any Mix Is Possible JavaScript based UI logic QML based UI structure QT/C++ Backend http://developer.blackberry.com
    37. 37. 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 38
    38. 38. Hello World in Cascades import bb.cascades 1.0 Page { content: Label { text: "Hello World" } } 39
    39. 39. Hello World in Qt Page* root = new Page; Label* label = Label::create() .text("Hello World"); root->setContent(label); Application::instance()->setScene(root); 40
    40. 40. Cascades IDE 41
    41. 41. 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 42
    42. 42. UI Adaptability - Multiple Form Factors
    43. 43. 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
    44. 44. 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
    45. 45. 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
    46. 46. 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
    47. 47. Links BlackBerry Cascades  developer.blackberry.com/cascades Blackberry Open Source  blackberry.github.com/cascades/samples.html 48
    48. 48. BlackBerry WebWorks HTML5
    49. 49. BlackBerry10 & HTML5 Unparalleled Standards Support Incredible Performance 50
    50. 50. 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 51
    51. 51. 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 52
    52. 52. 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 53
    53. 53. BlackBerry Web Platform      Driven by strong Web standards support Powered by WebKit HTML5 and CSS3 Flash 11 and WebGL WebWorks and Cordova 54
    54. 54. Some inspiration: WebGL http://www.gooengine.com
    55. 55. What can you do with WebWorks? • Geolocation • Offline mode • Storage • Audio / Video • 2D Graphics • Advanced forms • Invoke • Web Workers • Notifications 56
    56. 56. How do I get there? Web Assets WebWorks Tools BlackBerry Applications
    57. 57. 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++ 58
    58. 58. 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 59
    59. 59. Ripple Extension 60
    60. 60. Web Platform Extras    AliceJS library  CSS3 hardware acceleration WebGL  3D Graphics, OpenGL ES 2.0 Community frameworks 61
    61. 61. 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 62
    62. 62. bbui.js - Cases 63
    63. 63. WebWorks SDK 2.0 BETA 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. 64
    64. 64. 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 quickto-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.
    65. 65. Links SDK + Simulators  http://developer.blackberry.com/html5 GitHub  https://github.com/blackberry/BB10-WebWorks-Samples 66
    66. 66. Android Runtime and Packager
    67. 67. 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 68
    68. 68. Android Runtime What’s it all about and why does it matter? 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.
    69. 69. 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 70
    70. 70. 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: developer.blackberry.com/android/apisupport/ 71
    71. 71. Porting Existing Apps .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 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 72
    72. 72. Broader Reach You can grow your user base and increase revenue by getting your Android app onto BlackBerry World. BlackBerry World is available in 171 markets around the world More than 5 billion apps downloaded to date
    73. 73. Broader Reach Revenue Opportunities 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 % of devs who say revenue generation is a challenge 42% 22%
    74. 74. Broader Reach: APK Direct Install – A Closer Look 1 User discovers APK file, reviews Disclaimer, and chooses to install 2 User acknowledges Settings and Permissions 3 Install initiates 4 User can open app or access via homescreen icon
    75. 75. Links Where to start  http://developer.blackberry.com/android 76
    76. 76. Adobe AIR
    77. 77. Love is in the AIR Adobe AIR  Free and open source SDK   Open Source SDK Cross platform (Mobile desktop, mobi Cross platfom for & Desk) 3.5 millions of devs 3.5 million developers 70% of online games built on Flash Different tools & frameworks  ~70% online games built with Fl  Lot of frameworks and tools
    78. 78. Developing with Adobe AIR Easily adapt and deploy existing content Native BlackBerry® PlayBook™ tablet and BlackBerry 10 component set look and feel Can create hybrid apps Access to native (C/C++)API’s with Adobe® AIR® Native Extensions Lots of great community support Lots of open-source frameworks 79
    79. 79. Why Use AIR? AIR Community  Lot of Learning Resources Fast for create games  Different Frameworks, Engines & Libraries Empowering UX   First Class Citizen for BB10 Great Designer-Developer Workflows  Creative UI to the limit  http://developer.blackberry.com
    80. 80. Tools and getting started Flash Builder 4.6 and 4.7 Powerflasher FDT (Eclipse based) Adobe AIR SDK with Adobe ActionScript and Adobe Flex APIs create an engaging user experience   unique UI components and predefined skins listeners for events that are specific to BlackBerry devices access the features that are unique to mobile devices   Accelerometer Geolocation you can create AIR Native Extensions (ANE) 81
    81. 81. BlackBerry 10 UI QNXSkins.ane stores the assets for the skins    Device deployed ANE Correctly sized assets are stored on the device Reduces application file size 82
    82. 82. Support In BlackBerry 10 10.1, Adobe AIR 3.1 is supported Adobe AIR 3.5 and Stage 3D supported in BlackBerry 10.2 83
    83. 83. Links SDK + Simulators  http://developer.blackberry.com/air GitHub  https://github.com/blackberry/Samples-for-AIR 84
    84. 84. Built for BlackBerry
    85. 85. 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”
    86. 86. Benefits – BlackBerry World List View (Search or Top List) App Details Screen Feature Screen Built for BlackBerry Identifier placed beside star rating Built for BlackBerry Badge below screenshots (touch target) Touch target directs to Built for BlackBerry experience screen
    87. 87. Experience the Value of Carousel Placement 230.6% Increase 39% Increase paid downloads free downloads Increase 187.9% daily revenue Source: BlackBerry World Analytics
    88. 88. Supported Platforms HTML5 BlackBerry® WebWorks™ Cascades http://developer.blackberry.com/builtforblackberry C/C++ Native SDK Adobe AIR
    89. 89. Built for BlackBerry Evaluation Criteria User Experience Performance Localization Service Integration Security http://developer.blackberry.com/builtforblackberry
    90. 90. Games http://developer.blackberry.com/builtforblackberry
    91. 91. THANK YOU Luca Filigheddu Head of Developer Evangelism EMEA – BlackBerry @filos
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×