SlideShare a Scribd company logo
1 of 45
Download to read offline
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

What's hot

Introduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentIntroduction to Cross-Platform Hybrid Mobile App Development
Introduction to Cross-Platform Hybrid Mobile App DevelopmentÖzcan Zafer AYAN
 
Camerjam golden gekko mobile sport masterclass
Camerjam golden gekko mobile sport masterclassCamerjam golden gekko mobile sport masterclass
Camerjam golden gekko mobile sport masterclassJames Cameron
 
Building Mobile Application Using PhoneGap
Building Mobile Application Using PhoneGapBuilding Mobile Application Using PhoneGap
Building Mobile Application Using PhoneGapRajashekar Bhagavatula
 
Cross Platform Mobile App Development
Cross Platform Mobile App DevelopmentCross Platform Mobile App Development
Cross Platform Mobile App DevelopmentAnnmarie Lanesey
 
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)
X-Platform native apps in C# and .NET using Xamarin tools (iOS/WP/Android)Mark Radacz
 
Hybrid vs native mobile development – how to choose a tech stack
Hybrid vs native mobile development – how to choose a tech stackHybrid vs native mobile development – how to choose a tech stack
Hybrid vs native mobile development – how to choose a tech stackJacques De Vos
 
Cross platform technologies explained better!
Cross platform technologies explained better!Cross platform technologies explained better!
Cross platform technologies explained better!Master Software Solutions
 
Top 10 programming languages for mobile app development
Top 10 programming languages for mobile app developmentTop 10 programming languages for mobile app development
Top 10 programming languages for mobile app developmentWxit Consultant Services
 
Cross-platform development with Qt and OpenGL ES 2.0
Cross-platform development with Qt and OpenGL ES 2.0Cross-platform development with Qt and OpenGL ES 2.0
Cross-platform development with Qt and OpenGL ES 2.0feldifux
 
Hybrid vs Native vs Web Apps
Hybrid vs Native vs Web AppsHybrid vs Native vs Web Apps
Hybrid vs Native vs Web AppsPoluru S
 
Latest Trends in Mobile App Development
Latest Trends in Mobile App DevelopmentLatest Trends in Mobile App Development
Latest Trends in Mobile App DevelopmentDipesh Mukerji
 
Using HTML5 to Build Mobile Apps
Using HTML5 to Build Mobile AppsUsing HTML5 to Build Mobile Apps
Using HTML5 to Build Mobile AppsTodd Anglin
 
An introduction to mobile app development and investing
An introduction to mobile app development and investingAn introduction to mobile app development and investing
An introduction to mobile app development and investingBrandon Na
 
Native vs. Hybrid Applications
Native vs. Hybrid ApplicationsNative vs. Hybrid Applications
Native vs. Hybrid ApplicationsCihad Horuzoğlu
 
Native vs Hybrid - Demystifying the Technology Dilemma
Native vs Hybrid - Demystifying the Technology Dilemma Native vs Hybrid - Demystifying the Technology Dilemma
Native vs Hybrid - Demystifying the Technology Dilemma RST-IT
 
Mobile and Tablet App Development and Market Share
Mobile and Tablet App Development and Market ShareMobile and Tablet App Development and Market Share
Mobile and Tablet App Development and Market ShareJeremy Callinan
 

What's hot (20)

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

Similar to BlackBerry10 and iOS app SDK/Platform Comparison

Development of Mobile Application -PPT
Development of Mobile Application -PPTDevelopment of Mobile Application -PPT
Development of Mobile Application -PPTDhivya T
 
White paper native, web or hybrid mobile app development
White paper  native, web or hybrid mobile app developmentWhite paper  native, web or hybrid mobile app development
White paper native, web or hybrid mobile app developmentIBM Software India
 
Mobile Developer's Guide To The Galaxy No.10
Mobile Developer's Guide To The Galaxy No.10Mobile Developer's Guide To The Galaxy No.10
Mobile Developer's Guide To The Galaxy No.10Marco Tabor
 
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...Kai Koenig
 
Mobile and tablet app dev
Mobile and tablet app devMobile and tablet app dev
Mobile and tablet app devJeremy Callinan
 
Bringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile worldBringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile worldLaurent Sansonetti
 
Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021Katy Slemon
 
Felgo vs. Flutter vs. React Native: An in-Depth Comparison
Felgo vs. Flutter vs. React Native: An in-Depth ComparisonFelgo vs. Flutter vs. React Native: An in-Depth Comparison
Felgo vs. Flutter vs. React Native: An in-Depth ComparisonKaty Slemon
 
developementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxdevelopementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxPoooi2
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do ThatNathan Smith
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSZvika Epstein
 
Cross-platform development frameworks
Cross-platform development frameworksCross-platform development frameworks
Cross-platform development frameworksCarlo Bernaschina
 
Modern mobile development overview
Modern mobile development overviewModern mobile development overview
Modern mobile development overviewDima Maleev
 
Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012jobandesther
 
Brain storming development in the post pc world
Brain storming development in the post pc worldBrain storming development in the post pc world
Brain storming development in the post pc worldGalit Fein
 
Dia 1 intro to mobile and xamarin
Dia 1   intro to mobile and xamarinDia 1   intro to mobile and xamarin
Dia 1 intro to mobile and xamarinHernan Zaldivar
 

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

Development of Mobile Application -PPT
Development of Mobile Application -PPTDevelopment of Mobile Application -PPT
Development of Mobile Application -PPT
 
White paper native, web or hybrid mobile app development
White paper  native, web or hybrid mobile app developmentWhite paper  native, web or hybrid mobile app development
White paper native, web or hybrid mobile app development
 
Mobile Developer's Guide To The Galaxy No.10
Mobile Developer's Guide To The Galaxy No.10Mobile Developer's Guide To The Galaxy No.10
Mobile Developer's Guide To The Galaxy No.10
 
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...
Apps vs. Sites vs. Content - a vendor-agnostic view on building stuff for the...
 
Mobile and tablet app dev
Mobile and tablet app devMobile and tablet app dev
Mobile and tablet app dev
 
Bringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile worldBringing the Ruby language into the mobile world
Bringing the Ruby language into the mobile world
 
Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021
 
Shankar
ShankarShankar
Shankar
 
Felgo vs. Flutter vs. React Native: An in-Depth Comparison
Felgo vs. Flutter vs. React Native: An in-Depth ComparisonFelgo vs. Flutter vs. React Native: An in-Depth Comparison
Felgo vs. Flutter vs. React Native: An in-Depth Comparison
 
What Is A Technology Stack?
What Is A Technology Stack?What Is A Technology Stack?
What Is A Technology Stack?
 
Getting started with PhoneGap
Getting started with PhoneGapGetting started with PhoneGap
Getting started with PhoneGap
 
Doppl Code Sharing
Doppl Code SharingDoppl Code Sharing
Doppl Code Sharing
 
developementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptxdevelopementofmobileapplication-160412025313 (1).pptx
developementofmobileapplication-160412025313 (1).pptx
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
 
Hybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJSHybrid vs. Native app - Ionic Framework with AngularJS
Hybrid vs. Native app - Ionic Framework with AngularJS
 
Cross-platform development frameworks
Cross-platform development frameworksCross-platform development frameworks
Cross-platform development frameworks
 
Modern mobile development overview
Modern mobile development overviewModern mobile development overview
Modern mobile development overview
 
Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012Code and Conquer with Globe Labs, October 27, 2012
Code and Conquer with Globe Labs, October 27, 2012
 
Brain storming development in the post pc world
Brain storming development in the post pc worldBrain storming development in the post pc world
Brain storming development in the post pc world
 
Dia 1 intro to mobile and xamarin
Dia 1   intro to mobile and xamarinDia 1   intro to mobile and xamarin
Dia 1 intro to mobile and xamarin
 

More from Dr. Ranbijay Kumar

BlackBerry10: "Built For BlackBerry (BFB)"
BlackBerry10: "Built For BlackBerry (BFB)"BlackBerry10: "Built For BlackBerry (BFB)"
BlackBerry10: "Built For BlackBerry (BFB)"Dr. Ranbijay Kumar
 
JAM844 - Building Apps that Sense, Understand and Adapt
JAM844 - Building Apps that Sense, Understand and AdaptJAM844 - Building Apps that Sense, Understand and Adapt
JAM844 - Building Apps that Sense, Understand and AdaptDr. Ranbijay Kumar
 
JAM803-How the Use of NFC is Evolving
JAM803-How the Use of NFC is EvolvingJAM803-How the Use of NFC is Evolving
JAM803-How the Use of NFC is EvolvingDr. Ranbijay Kumar
 
Ranbijay Kumar - BlackBerry Jam Americas 2013
Ranbijay Kumar - BlackBerry Jam Americas 2013Ranbijay Kumar - BlackBerry Jam Americas 2013
Ranbijay Kumar - BlackBerry Jam Americas 2013Dr. Ranbijay Kumar
 
BlackBerry10: Blurring the Boundaries between HTML5 & Native Apps
BlackBerry10: Blurring the Boundaries between HTML5 & Native AppsBlackBerry10: Blurring the Boundaries between HTML5 & Native Apps
BlackBerry10: Blurring the Boundaries between HTML5 & Native AppsDr. Ranbijay Kumar
 
Building Apps that Sense, Understand and Adapt.
Building Apps that Sense, Understand and Adapt.Building Apps that Sense, Understand and Adapt.
Building Apps that Sense, Understand and Adapt.Dr. Ranbijay Kumar
 
Bring Your Android Apps to BlackBerry 10 in minutes
Bring Your Android Apps to BlackBerry 10 in minutesBring Your Android Apps to BlackBerry 10 in minutes
Bring Your Android Apps to BlackBerry 10 in minutesDr. Ranbijay Kumar
 
Identifying Bottlenecks in Mobile Cloud Computing (MCC)
Identifying Bottlenecks in Mobile Cloud Computing (MCC)Identifying Bottlenecks in Mobile Cloud Computing (MCC)
Identifying Bottlenecks in Mobile Cloud Computing (MCC)Dr. Ranbijay Kumar
 
JAM316 - Native API Deep Dive: Multimedia Playback & Streaming
JAM316 - Native API Deep Dive: Multimedia Playback & StreamingJAM316 - Native API Deep Dive: Multimedia Playback & Streaming
JAM316 - Native API Deep Dive: Multimedia Playback & StreamingDr. Ranbijay Kumar
 
JAM819 - Native API Deep Dive: Data Storage and Retrieval
JAM819 - Native API Deep Dive: Data Storage and RetrievalJAM819 - Native API Deep Dive: Data Storage and Retrieval
JAM819 - Native API Deep Dive: Data Storage and RetrievalDr. Ranbijay Kumar
 

More from Dr. Ranbijay Kumar (12)

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

BlackBerry10 and iOS app SDK/Platform Comparison