SlideShare a Scribd company logo
BlackBerry 10 and iOS
app SDK/Platform comparison
Suavek Zajac
Developer Relations
Ranbijay Kumar
Key Takeaways:
Understand the similarities and difference between the
platforms
 What’s different
 What’s the same
 Where differences matter
2
The Platforms
3
iOS (Kernel) & Drivers
Core Services
Graphics and Audio
Application Frameworks
[Maps, Message …]
UIKit
BB10 (QNX micro-kernel) &
Drivers
Core Services (/BPS)
Graphics and Audio
Application Frameworks
[Qt, Maps, PIM, Share …]
Cascades / QML
Posix
Webkit
Android Runtime, AIR
Types of Apps
4
Web Apps
Native with Webview
PhoneGap…
Native
(Objective C and Cocoa Touch
UIKit, OpenGL)
Web Apps
Native with Webview
WebWorks, PhoneGap…
Native
(C/C++, QML, Cascades,
OpenGL)
Objective C and C
5
#include <stdio.h>!
#include <stdlib.h>!
!
int !
main(int argc, char **argv)!
{!
fprintf(stdout, “Hello World!n”);!
return EXIT_SUCCESS;!
}!
C/C++
!  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+
+)
6
Development Environment
Momentics IDE
8
XCode
9
Platform Services
10
!  BB10 is playing catch-up to iOS in SDK features and
services
!  Lots of similarities between key features …
!  Differences to be discussed…
Thoughts…
!  iOS
!  Facebook/Twitter Connect APIs
!  Background (/Headless) services
!  VOIP
!  Custom Navigation Apps
!  Music / Downloads /Services
11
Cryptography*
!  iOS and BB10 … similar features
!  AES,DES,3DES…
!  Key difference BB10 crypto algorithms are FIPS certified
!  What the FIPS?
Only Modules validated as
conforming to FIPS 140-2 are
accepted by the Federal
Agencies of Canada/US for the
protection of sensitive
information.
Service similarities (Invoke)
13
I need to
open
this .doc file.
Anyone?
I can
open .doc
files
Invocation
Framework
Service Similarities (Viewers)
14
Similarities in UX
!  Apple Says
!  The Display Is Paramount
!  Regardless of Its size
!  Apps Respond to Gestures, Not Clicks
!  RIM Says
!  Content is King
!  Apps must Flow
15
Notifications
16
BB10 Peek is more efficient
17
!  Apple concept of page curl
!  Not as universal
A key difference
!  Apple Says
!  People interact with One App at a Time
!  RIM Says
!  Extend/Connect
!  BlackBerry people Multi-Task
!  Combine that with Peek and Viewers/Cards
18
Application Behavior
Lifecycle and when to store your data
•  Must respond correctly
to lifecycle events
•  Can drain battery
•  Must store data
efficiently
19
Start
Exit
Normal
(Active)
Thumbnail
(Active/Inactive)
Hidden
(Inactive)
iOS Lifecycle
20
!  Long-Running Background Tasks
!  Audio
!  Location/Navigation
!  VOIP
!  Newsstand apps (downloads etc…)
!  Accessory apps
Sample Project
Podcast App (Work in progress. Blog installments)
Starting: Development Tools
22
UI Design (iOS storyboards)
23
BB10 Qt/QML
24
Lists (ListView)
Container*{*
**..*
****ListView*{*
********dataModel:(XmlDataModel({*
************source:*"models/items.xml"*
********}*
********listItemComponents:*[*
***********(ListItemComponent({*
****************type:*"header”*
******************HeaderListItem*{*
********************>tleText:*ListItemData.>tle*
********************sub>tleText:*ListItemData.sub>tle*
****************}*
************},*
************ListItemComponent*{*
****************type:*"listItem”*
******************StandardListItem*{*
********************>tleText:*ListItemData.>tle*
********************descrip>onText:*ListItemData.sub>tle*
********************statusText:*ListItemData.status*
****************}}}}}}*
Lists
26
10 Lines of
QML!
Lists Summary
!  iOS Storyboards are Visually appealing but … QML/Qt is
just as descriptive.
!  Data binding to Lists is much easier in Cascades than on
iOS
27
Similar UI (notice subtle UX diff’s)
28
Navigation (Navigation Controller)
29
Navigation Pane
30
A closer look at applications
Navigation Bar / Action Bar
32
Settings / App Menu
33
Tab Bar
34
Tab Overflows (BB10 Sidebar)
35
Context Menu
36
toolbar
Custom buttons in the navigation bar
BB10 has an action bar overflow
37
TableView / ListView
38
WebView and WebView (webkit)
39
Action Sheets / Sheets
40
Cascades Sheets
A sheet breaks the current navigational flow. It contains a subflow that need to
be finished before the original application flow can be resumed.
Examples: Pickers, Forms
41
Cascades Controls
iOS Controls
43
Questions and Answers
Thank you
Suavek Zajac
Developer Relations

More Related Content

PPT
Building Native Smartphone Apps with Rhodes
PDF
Introduction to Mobile Development
PDF
Xamarin y MS Azure | Cognitive Services
PPTX
iOS & Android Application Development - Pee Dee User Group Meeting
PPTX
Hybrid mobile application with Ionic
PDF
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015
PDF
Mobile app development - course intro
PPTX
Ionic - Hybrid Mobile Application Framework
Building Native Smartphone Apps with Rhodes
Introduction to Mobile Development
Xamarin y MS Azure | Cognitive Services
iOS & Android Application Development - Pee Dee User Group Meeting
Hybrid mobile application with Ionic
Ionic, ce n'est pas que de l'UI, meetup PhoneGap le 25-05-2015
Mobile app development - course intro
Ionic - Hybrid Mobile Application Framework

What's hot (20)

PDF
Introduction to Cross-Platform Hybrid Mobile App Development
PDF
Camerjam golden gekko mobile sport masterclass
PPT
Building Mobile Application Using PhoneGap
PDF
Cross Platform Mobile App Development
PPTX
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
PDF
DroidCon Berlin 2018 summary
PDF
Hybrid vs native mobile development – how to choose a tech stack
PDF
Cross platform technologies explained better!
PPTX
Top 10 programming languages for mobile app development
PPTX
Cross-platform development with Qt and OpenGL ES 2.0
PPT
Hybrid vs Native vs Web Apps
PPTX
Latest Trends in Mobile App Development
PDF
Native vs. Hybrid Apps
PDF
Using HTML5 to Build Mobile Apps
PDF
An introduction to mobile app development and investing
PDF
Native vs. Hybrid Applications
PDF
Native vs Hybrid - Demystifying the Technology Dilemma
PDF
Hybrid mobile apps
PPT
Mobile and Tablet App Development and Market Share
PPTX
Hybrid mobile app with kendo ui mobile
Introduction to Cross-Platform Hybrid Mobile App Development
Camerjam golden gekko mobile sport masterclass
Building Mobile Application Using PhoneGap
Cross Platform Mobile App Development
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
DroidCon Berlin 2018 summary
Hybrid vs native mobile development – how to choose a tech stack
Cross platform technologies explained better!
Top 10 programming languages for mobile app development
Cross-platform development with Qt and OpenGL ES 2.0
Hybrid vs Native vs Web Apps
Latest Trends in Mobile App Development
Native vs. Hybrid Apps
Using HTML5 to Build Mobile Apps
An introduction to mobile app development and investing
Native vs. Hybrid Applications
Native vs Hybrid - Demystifying the Technology Dilemma
Hybrid mobile apps
Mobile and Tablet App Development and Market Share
Hybrid mobile app with kendo ui mobile
Ad

Similar to BlackBerry10 and iOS app SDK/Platform Comparison (20)

PDF
QNX, C/C++, Qt, Cascades, HTML5… So what’s now BlackBerry 10 application deve...
PDF
Develop For BlackBerry10
PPT
Synapse india reviews on i phone and android os
PPTX
Sviluppare per una piattaforma mobile aperta: opportunità e sfide
PPT
Synapse india mobile apps update
PPTX
Lecture1
PDF
iPhone in action introduction to Web and SDK development 1st Edition Christop...
PDF
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...
PDF
Mobileuidevchallengesinnovate2012a 120607124912-phpapp02
PDF
ios-mobile-app-development-intro
PDF
Никита Корчагин - Introduction to Apple iOS Development.
PDF
PDF
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...
PDF
Developing for BlackBerry 10 – Tools and SDKs by Luca Filigheddu
KEY
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
PDF
Developing Applications on iOS
PDF
iPhone App Dev Overview - Mobile Dev Camp Vietnam 1
PPT
Mobile OS Platform
PPT
iPhone Programming
KEY
Why the web won't do
 
QNX, C/C++, Qt, Cascades, HTML5… So what’s now BlackBerry 10 application deve...
Develop For BlackBerry10
Synapse india reviews on i phone and android os
Sviluppare per una piattaforma mobile aperta: opportunità e sfide
Synapse india mobile apps update
Lecture1
iPhone in action introduction to Web and SDK development 1st Edition Christop...
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...
Mobileuidevchallengesinnovate2012a 120607124912-phpapp02
ios-mobile-app-development-intro
Никита Корчагин - Introduction to Apple iOS Development.
Mobile Development Architecture Ppt with Slides, Book Notes on using Web Silv...
Developing for BlackBerry 10 – Tools and SDKs by Luca Filigheddu
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
Developing Applications on iOS
iPhone App Dev Overview - Mobile Dev Camp Vietnam 1
Mobile OS Platform
iPhone Programming
Why the web won't do
 
Ad

More from Dr. Ranbijay Kumar (12)

PDF
BlackBerry10: "Built For BlackBerry (BFB)"
PDF
JAM844 - Building Apps that Sense, Understand and Adapt
PDF
JAM805 - Beyond the Device
PDF
JAM803-How the Use of NFC is Evolving
PDF
Ranbijay Kumar - BlackBerry Jam Americas 2013
PDF
Online Industry - New Era
PDF
BlackBerry10: Blurring the Boundaries between HTML5 & Native Apps
PDF
Building Apps that Sense, Understand and Adapt.
PDF
Bring Your Android Apps to BlackBerry 10 in minutes
PDF
Identifying Bottlenecks in Mobile Cloud Computing (MCC)
PDF
JAM316 - Native API Deep Dive: Multimedia Playback & Streaming
PDF
JAM819 - Native API Deep Dive: Data Storage and Retrieval
BlackBerry10: "Built For BlackBerry (BFB)"
JAM844 - Building Apps that Sense, Understand and Adapt
JAM805 - Beyond the Device
JAM803-How the Use of NFC is Evolving
Ranbijay Kumar - BlackBerry Jam Americas 2013
Online Industry - New Era
BlackBerry10: Blurring the Boundaries between HTML5 & Native Apps
Building Apps that Sense, Understand and Adapt.
Bring Your Android Apps to BlackBerry 10 in minutes
Identifying Bottlenecks in Mobile Cloud Computing (MCC)
JAM316 - Native API Deep Dive: Multimedia Playback & Streaming
JAM819 - Native API Deep Dive: Data Storage and Retrieval

BlackBerry10 and iOS app SDK/Platform Comparison