for the BlackBerry 10 platform Vladimir Minenko, Qt team lead, - - PowerPoint PPT Presentation

for the blackberry 10 platform
SMART_READER_LITE
LIVE PREVIEW

for the BlackBerry 10 platform Vladimir Minenko, Qt team lead, - - PowerPoint PPT Presentation

Developing with for the BlackBerry 10 platform Vladimir Minenko, Qt team lead, Research in Motion Qt Developer Conference 2012 Qt Developer Days 2012 2 Thank you for making this event happen! Qt Developer Days 2012 3 Points to convey A


slide-1
SLIDE 1

Developing with for the BlackBerry 10 platform

Vladimir Minenko, Qt team lead, Research in Motion Qt Developer Conference 2012

slide-2
SLIDE 2

Thank you for making this event happen!

Qt Developer Days 2012 2
slide-3
SLIDE 3
  • A story …
  • What the heck is …
  • Where and how to start
Qt Developer Days 2012 3

Points to convey

slide-4
SLIDE 4

A story of…

Qt Developer Days 2012 4
slide-5
SLIDE 5

Qt Developer Days 2012 5

Nov 2011 May 2012 Q1 2013

A story of…

Today friends@RIM

slide-6
SLIDE 6

Qt Developer Days 2012 6

4.8.3 “BYO”

Nov 2011 May 2012 Q1 2013

A story of…

Today friends@RIM

slide-7
SLIDE 7

Qt Developer Days 2012 7

4.8.3 “BYO”

Nov 2011 May 2012 Q1 2013

A story of…

Today friends@RIM

slide-8
SLIDE 8

Qt Developer Days 2012 8

4.8.3 “BYO”

Nov 2011 May 2012 Q1 2013

A story of…

Today friends@RIM

slide-9
SLIDE 9

Qt Developer Days 2012 9

4.8.3 “BYO”

Nov 2011 May 2012 Q1 2013 team@RIM

A story of…

Today friends@RIM

slide-10
SLIDE 10

Qt Developer Days 2012 10

4.8.3 “BYO”

Nov 2011 May 2012 Q1 2013 team@RIM

A story of…

Today friends@RIM Jan 30, 2013

slide-11
SLIDE 11

Qt Developer Days 2012 11

4.8.3 “BYO”

Nov 2011 May 2012 Jan 30, 2013 team@RIM

A story of…

Today friends@RIM Community Q1 2013

slide-12
SLIDE 12

BlackBerry 10 for developers

Qt Developer Days 2012 12
slide-13
SLIDE 13

BlackBerry 10 development

Qt Developer Days 2012 13

WebWorks SDK HTML5 AIR SDK AS3 Flex Native SDK C/C++ Cascades Android SDK Java

slide-14
SLIDE 14

BlackBerry 10 NDK

Qt Developer Days 2012 14

More under http://developer.blackberry.com/native/beta/documentation/

Cascades Developers QtGui Developers Game Developers

UI QtGui Qt Quick

slide-15
SLIDE 15

BlackBerry 10 for developers

Qt Developer Days 2012 15
slide-16
SLIDE 16

Qt Quick

Qt Developer Days 2012 16

Qt on BlackBerry 10

QNX + BlackBerry Platform API Cascades UI apps (C++ and QML) Qt UI apps (C++ and Qt Quick) QtCore QtNetwork QtDeclarative QtScript QtSvg QtSql QtXmlPatterns QtXml QPA plugin QNX adaptations BlackBerry adaptations Qt-based Platform API Items and elements QtWebKit Cascades UI framework QtCreator plugin QtGui specific style

(temporarily)

slide-17
SLIDE 17

What the heck is Cascades?

2012 17

slide-18
SLIDE 18

No worries at all! If you know Qt, starting with Cascades is just a piece of cake!

2012 18

slide-19
SLIDE 19
  • Cascades is native BlackBerry 10 UI framework
  • Allows writing apps in C++ or/and QML in a Qt way!
  • It is based on Qt but…
  • Has an own client-server scenegraph-based

rendering backend (does not use Qt for this)

  • More – tomorrow at 9:00am in Asgabad and under:

https://developer.blackberry.com/cascades/documentation

Qt Developer Days 2012 19

What the heck is Cascades?

slide-20
SLIDE 20

Qt Quick

Qt Developer Days 2012 20

Qt on BlackBerry 10, again

QNX + BlackBerry Platform API Cascades UI apps (C++ and QML) Qt UI apps (C++ and Qt Quick) QtCore QtNetwork QtDeclarative QtScript QtSvg QtSql QtXmlPatterns QtXml QPA plugin QNX adaptations BlackBerry adaptations Qt-based Platform API Items and elements QtWebKit Cascades UI framework QtCreator plugin QtGui specific style

(temporarily)

slide-21
SLIDE 21

Qt Quick

Qt Developer Days 2012 21

Cascades apps

QNX + BlackBerry Platform API Cascades UI apps (C++ and QML) QtCore QtNetwork QtDeclarative QtScript QtSvg QtSql QtXmlPatterns QtXml QPA plugin QNX adaptations BlackBerry adaptations Qt-based Platform API Items and elements Cascades UI framework QtCreator plugin QtGui specific style

slide-22
SLIDE 22

Qt Quick

Qt Developer Days 2012 22

Pure Qt apps

QNX + BlackBerry Platform API Qt UI apps (C++ and Qt Quick) QtCore QtNetwork QtDeclarative QtScript QtSvg QtSql QtXmlPatterns QtXml QPA plugin QNX adaptations BlackBerry adaptations Qt-based Platform API Items and elements Cascades UI framework QtCreator plugin QtGui specific style

slide-23
SLIDE 23

Qt Developer Days 2012 23

Pure Qt UI on BlackBerry 10

  • Qt C++ widgets
  • BlackBerry 10 style

(prototype developed by KDAB)

  • Qt Quick custom UI
  • BYO
slide-24
SLIDE 24
  • Full touch devices: 1280 x 720
  • Keyboard devices: 720 x720
  • Tons of sensors
  • Bluetooth
  • NFC
  • Camera
  • GPS
  • and more…

Qt Developer Days 2012 24

Mobile related stuff …

slide-25
SLIDE 25

Qt Developer Days 2012 25

Your first steps

  • Check http://qt-project.org/wiki/BlackBerry
  • Register @RIM and get signing keys
  • Download, install and setup the BlackBerry 10 NDK:

http://developer.blackberry.com/native/beta/documentation/app_develo pment_start_finish.html

  • Download and setup QtCreator 2.6.x
  • Get an “Hello World” app done
slide-26
SLIDE 26
  • BlackBerry 10 NDK
  • Cross-compile toolchain
  • Qt 4.8.x
  • Momentics IDE
  • BlackBerry 10 Simulator
  • QtCreator 2.6.x or newer
  • DevAlpha device

Qt Developer Days 2012 26

Your tools

slide-27
SLIDE 27

Qt Developer Days 2012 27

Packaging

Files BAR Descriptor (XML) BAR Signed BAR BAR Debug Token RIM certificates Developer Certificates

slide-28
SLIDE 28
  • Mandatory!
  • Written in the “BAR descriptor file”, XML based
  • Versions (build, platform, etc)
  • Names and IDs (author, app, package, etc)
  • Assets (files your app uses, incl. libs)
  • The icon and the splash-screen
  • Entry point
  • Permissions needed

Qt Developer Days 2012 28

Metadata about your app

slide-29
SLIDE 29

Qt Developer Days 2012 29

Sandbox

data logs tmp app shared Sandbox Application Installation User Shared

slide-30
SLIDE 30

Get a simple Qt app on BB10

Qt Developer Days 2012 30
slide-31
SLIDE 31
  • Focus on Qt4 mid-term
  • We work fully upstream!
  • Need(ed) to revert/add a commit

in a few cases

  • Use internal branches for

integration and image builds

  • Run local Jenkins-based CI

Qt Developer Days 2012 31

Fully open source

slide-32
SLIDE 32
  • Launch BlackBerry 10!
  • Launch BlackBerry 10!!
  • Launch BlackBerry 10!!!
  • Revive Qt Mobility for Qt4
  • Get integrated with Qt’s CI
  • Qt5 as an add-on lib
  • Explore Qt5 on BlackBerry 10
  • Get BlackBerry WebKit into Qt
  • And more…

Qt Developer Days 2012 32

What is next?

slide-33
SLIDE 33
  • Get a DevAlpha device for free if you convince us your plans are serious
  • Participate in the “10k Developer Commitment” program

Qt Developer Days 2012 33

Easy to port. Hard to resist.

slide-34
SLIDE 34

BlackBerry Developer: https://developer.blackberry.com/ BlackBerry on Github: https://github.com/blackberry Slides and videos from BlackBerry Jams: http://hosting.desire2learncapture.com/RIM/ Group @Qt: http://qt-project.org/groups/qt-blackberry-and-qnx Wiki @Qt: http://qt-project.org/wiki/BlackBerry Next key event: BlackBerry Jam Europe 5-6 February, Amsterdam

Qt Developer Days 2012 34

Day Time Room Title Speaker Today 15:30 Here! Connecting your BlackBerry 10 app to the network Peter Hartmann Today 16:45 Bischkek How Qt Helped RIM Build BlackBerry 10 Jeff Kehres Tomorrow 09:00 Asgabat BlackBerry 10 Cascades UI Framework: A Different Take Markus Landin Tomorrow 15:00 A keynote Qt and the upcoming BlackBerry 10 Platform Alec Saunders

slide-35
SLIDE 35

BlackBerry Developer: https://developer.blackberry.com/ BlackBerry on Github: https://github.com/blackberry Slides and videos from BlackBerry Jams: http://hosting.desire2learncapture.com/RIM/ Group @Qt: http://qt-project.org/groups/qt-blackberry-and-qnx Wiki @Qt: http://qt-project.org/wiki/BlackBerry BlackBerry Jam Europe 5-6 February, Amsterdam

Thank you! Questions?

Vladimir Minenko

Qt Developer Days 2012 35

Day Time Room Title Speaker Today 15:30 Here! Connecting your BlackBerry 10 app to the network Peter Hartmann Today 16:45 Bischkek How Qt Helped RIM Build BlackBerry 10 Jeff Kehres Tomorrow 09:00 Asgabat BlackBerry 10 Cascades UI Framework: A Different Take Markus Landin Tomorrow 15:00 A keynote Qt and the upcoming BlackBerry 10 Platform Alec Saunders