Building native apps for BB10/PlayBook for iOS developers
Ranbijay Kumar & Prakash Sainani Developer Relations – Research In Motion BlackBerry 10 SDKs
Java ActionScript C/C++ C++/Qt HTML5 BlackBerry ® Android ™ ™ Adobe ® AIR ® Native SDK Cascades WebWorks Runtime Architecture
Native & HTML5 Apps Android Apps Adobe AIR Apps
HTML/CSS Open GL Java Action Script Cascades QML JavaScript Open AL .apk .swf
WebKit JavaScript C++ C/C++ Android Runtime AIR Runtime
Platform APIs
Qt C++ C/C++
Network Storage Audio/Video Graphics Push i18n …
QNX Kernel BlackBerry 10 Foundations Platform APIs & Core
PackagesApplications
Android Native Web AIR Player Runtime Runtime Runtime
Application BBM™ Application Payment Advertising Push Data Notification Phone Calendar Infrastructure Service Platform
Invocation Share Analytics Contacts Messages Tasks …
Configuration Cascades Search Config Balance
Backup / Lifecycle Utilities i18n Instrument n … Restore
System Service Authenticatio Navigator Installer Launcher Multimedia SQLite NFC n Window WebKit Protocols Network DRM Crypto … Manager
OSOS Memory Process Power Device IPC File System … Management Management Management Drivers The Platforms
iOS BB10
UIKit Cascades / QML
Application Frameworks Webkit Application Frameworks [Maps, Message …] [Qt, Maps, PIM, Share …] Graphics and Audio Graphics and Audio
Core Services Core Services (/BPS)
iOS (Kernel) & Drivers Posix BB10 (QNX micro-kernel) & Drivers Types of Apps
iOS BB10
Native Native
(Objective C and Cocoa Touch (C/C++, QML, Cascades, UIKit , OpenGL) OpenGL)
Web Apps Web Apps
Native with Webview Native with Webview PhoneGap… WebWorks, PhoneGap… Native and Web Apps in BB10
C/C++ is used widely due to it’s portability. It’s a true cross-platform language (combined with POSIX)
Enables Lots of BB10 Open Source Frameworks iOS can also run C/C++ apps (Objective-C++). Developers are starting to look into this option for cross -platform savings. Simple on iOS (just rename your .m file into .mm and add objective- C++) Html5
Enables Lots of BB10 Open Source Frameworks BB10 can also run PhoneGap, Sencha and other cross-platform supportive frameworks. Momentics IDE BlackBerry WebWorks
“A cross-platform HTML5 application framework for creating standalone BlackBerry applications “ BlackBerry Web Platform
447 § Driven by strong Web standards support § Powered by WebKit http://html5test.com http://acid3.acidtests.org § HTML5 and CSS3 § Flash 11 and WebGL
http://www.craftymind.com/guimark3/ HTML5 powered by WebWorks
HTML5, CSS3, JavaScript
WebKit engine
WebWorks platform
BlackBerry Developer APIs
https://developer.blackberry.com/html5/api How to get there?
Web Assets WebWorks Tools BlackBerry Applications BlackBerry 10 Experience Cascades: Out-of-the-Box Elegance BlackBerry ® WebWorks™ & bbUI.js Future-Proof Native Web Apps A closer look at applications Settings / App Menu Tab Bar Tab Overflows (BB10 Sidebar) Context Menu
Custom buttons in the navigation bar
toolbar TableView / ListView Notifications PlayBook/BB10 development BAR files
A BAR file is the native PlayBook/BlackBerry 10 application package
What APP files are for iOS, BAR files are for BlackBerry BAR files contain executables, images, media, etc.
blackberry-deploy: load a packaged app onto the device The device has to be in development mode THANK YOU
[email protected] developer.blackberry.com [email protected]