SlideShare ist ein Scribd-Unternehmen logo
1 von 54
Downloaden Sie, um offline zu lesen
Andreas Jakl
Senior Technical Consultant
Forum Nokia

                              08 February, 2011
                                         v3.0.2
Distribute: Ovi Store
                                                                         ... and get famous and rich!


                                                           Design, develop & test

                                           Choose development technology
                                           Qt, Web, Java


                       Select target platform(s)
                       MeeGo, Symbian, Series 40


Choose target market(s) for your app
Europe, US, Africa, China, India, etc.
Java apps


                       Native apps (Qt)


            Web Apps                      Web Apps
Native apps
Use operating system and its functions directly
   (different code for networking, GPS, etc.)



            Operating System
  Symbian, MeeGo, Windows, Mac OS, Linux
(if needed, direct access is still possible)
      Your App



      Qt framework
      Same code works on all platforms,
      covers many usecases (GPS, etc.)



          Operating System
Symbian, MeeGo, Windows, Mac OS, Linux
Using Qt SDK for
            – Dev. environment
            – Testing
            – Translation
                                     Publish to
            – Help
                                     – Ovi Store
                                       (Symbian, MeeGo)
Developer       App Source Code      – Windows
                                     – Linux
            Using Qt framework for   – Mac
            – User Interface         – Embedded
            – Networking
            – Location (GPS)
            – Web integration
            – ...
•   Cross-Platform                                   •   Mobile focus
      –   Same source code for multiple platforms          –   Location, Maps
      –   Maximum performance – native apps!               –   Sensors
•   Generic                                                –   Messaging (SMS, email)
      –   User Interface                                   –   Contacts, Calendar
      –   Declarative UI, animation, gestures,             –   Camera
          multi-touch, 3D (OpenGL)                         –   System information
      –   WebKit & JavaScript engine included              –   Haptics (vibration)
      –   Multimedia (audio, video)                  •   Extend
      –   Networking, XML                                  –   Include any 3rd party C++ library / code
      –   SQL, files, app settings
      –   Container classes, object communication,     23 modules,
          threading, unit testing                     ~ 800 classes,
                                                     ~ 9000 functions
4 million DL / day
                                                                  190+ countries
     Discussion boards,           One-time fee of €1.           103x operator billing
     e-learning videos,   Submit an unlimited number of apps.
         examples




SDK, toolchain,
remote device testing,
etc.
Open Source
                       qt.gitorious.org




          Qt can be used in commercial,
               closed-source apps
Changes to Qt source
    must be shared
             Tech support available
                                Included support
Nokia E71                   Nokia N8
                                                                                                                                                        (S60 3.1, 2008)           (Symbian^3, 2010)



      • Qt for Symbian:
                 – Works on S60 3.1+ (E71, E72, 5800, N97, N8, etc.) *
                 – Look up platform versions:
                        http://www.forum.nokia.com/devices/


                                                                                   Qt Compatibility                                                                          Qt Pre-Installed




* Qt can be installed on all compatible devices. Not all devices are enabled for Qt content in the Ovi Store. Current list of Ovi Store device deployment support for Qt apps:
http://www.forum.nokia.com/Distribute/Packaging_and_signing.xhtml
• Open Source Linux for Mobile Computers
    – Based on Maemo and MobLin
    – Developed by Nokia and Intel
    – Hosted by the Linux Foundation
    – www.meego.com
•   Qt is the same on all platforms, but:
      – New UI concepts for mobile devices
            •   Touch screen, limited screen space
      – Be careful
            •   Network speed, roaming, battery
      – More possibilities
            •   GPS, accelerometer, compass, haptics, multitouch
•   Platform-specific knowledge
      – Mainly hidden
      – A few concepts shine through
            •   Security system (Symbian: capabilities, signing)
            •   Need to use native operating system APIs when Qt doesn’t provide the functionality
• You‘ll love Qt!
    – Easier setup
         •   1-click installation (Qt SDK)

    – Hides complexity
         •   No descriptors, cleanup stack,
             two-phase construction, active objects

    – Less code, more efficiency                            Nokia 7650 (2001)
                                                           Nokia’s first Symbian phone


    – Expand the reach
         •   Deploy your app not only to Symbian, but also to MeeGo and other platforms
• Expand your reach
    – Reach different market segment
    – Nokia: 30.8% global market share (Q4 2010, IDC)
• Porting
    – Web: supported with all manufacturers
    – Native apps: different programming languages
• Porting Guidelines
    – http://wiki.forum.nokia.com/index.php/Porting_Mobile_Applications_to_Qt
• Keep your assets
    – Reuse images, sound & music
• Screen resolution

                                    iPhone <= 3        480 x 320   3:2
                                    iPhone 4           960 x 640   3:2
                                    Nexus S            800 x 480   5:3
                 Symbian^1 & 3      Samsung Galaxy S   800 x 480   5:3
                   640 x 360
                16:9 aspect ratio   Nokia N900         800 x 480   5:3
Engine: WebKit (latest version,
great HTML 5 support)
Dev. environment: Qt SDK                          - Storage of content on
                                                  the device (HTML, CSS,
                                                  JavaScript, Images)
                                                  - Menu icon
Engine: WebKit (earlier version,                  - Access to device features
same as phone browser)
Dev. environment: Aptana Studio / Nokia Web SDK
Rewriting your source code
                                                  is always required
              Java (parts in C++ possible)
                                                  Native OpenGL ES 2.0 is
              Eclipse
                                                  supported on all platforms,
                                                  but steep learning curve
                                                  and more effort!




                                         C++
                                         Qt SDK
Objective C
Xcode
• Qt SDK 1.1                                                                Maemo

    – One-click installation
         •   IDE, toolchain, documentation,
             examples                                Desktop                                        Simulator

    – Tech Preview out now:                                                 Qt SDK
                                                                            works on
       http://labs.qt.nokia.com/2011/01/20/qt-sdk-                       Windows, Linux,
       1-1-technology-preview-released/                                       Mac




                                                                                           MeeGo
                                                               Symbian
                                                                                           (soon)
• Efficient Testing
     – Quick launch
     – Scripting possibilities
          •   Using JavaScript

     – Simulate mobile environments
          •   Location, contacts, etc.

     – Simulate phone events
          •   Battery, messages, etc.

     – Skins for different platforms / form-factors
          •   Resolutions, orientation, etc.
• Widgets (QLabel, QPushButton, etc.)
    – Use platform UI design
    – Support style sheets
    – Drag & drop UI designer


             Great for desktop.



          Static layouts make effects difficult.
          Small UI, different interaction paradigms.
• Qt Quick
              – QML language and JavaScript
              – Declarative syntax, animations and states integrated
              – Drag & drop UI designer

                                 Very easy to make slick, fluid UIs.
                                 Most important for mobile devices!



                          Ready-made UI components on their way *

* Project page: http://bugreports.qt.nokia.com/browse/QTCOMPONENTS
Desktop App   Mobile App   Game

Widgets


Qt Quick


OpenGL


Web
~ 300 lines of code,   #include <QApplication>                         import Qt 4.7
~ 15 files             #include <QPushLabel>
                                                                       Rectangle {
                       int main(int argc, char *argv[])                  width: 360
                       {                                                 height: 360
                           QApplication app(argc, argv);
                           QLabel helloLabel("Hello World");               Text {
                           helloLabel.setAlignment(Qt::AlignCenter);         anchors.centerIn: parent
                           helloLabel.showMaximized();                       text: "Hello World"
                                                                           }
                           return app.exec();                          }
                       }
•   Most cross-platform
      –    Design and create any custom user interface
      –    Same resolution: pixel precise on desktop, Symbian and MeeGo




          Windows 7                                                       Simulator




                                                                            Maemo / MeeGo

          Symbian^3
import Qt 4.7
                                       Rectangle {
• Describe UI by tree structure of       width: 200
                                         height: 200
   property bindings                     Image {
     – Properties dynamically              source: "QtLogo.png"
                                           anchors.centerIn: parent
        evaluated                        }
     – Communication through           }

        signals & slots
     – Bindings to C++ code possible
     – Animate properties using
        states and transitions
import Qt 4.7
                                     Rectangle {
                                       width: 200
• Interactivity
                                       height: 200
    – Interact with                    Image {
                                         source: "QtLogo.png"
       mouse / touch                     anchors.centerIn: parent
    – Execute JavaScript in signal     }
                                       MouseArea {
       handlers                          anchors.fill: parent
                                         onClicked: parent.color = "green"
                                       }
                                     }
import Qt 4.7
                              Rectangle {
                                width: 200
• Dynamic property update
                                height: 200
    – Move image with mouse     Image {
                                  source: "QtLogo.png"
                                  x: myMouse.mouseX
                                  y: myMouse.mouseY
                                }
                                MouseArea {
                                  id: myMouse
                                  hoverEnabled: true
                                  anchors.fill: parent
                                  onClicked: parent.color = "green"
                                }
                              }
Viewer on PC & mobile:           Qt C++ app to load and show QML
Testing 100% pure QML directly
                                 Can include C++ for app logic
E.g., created by Flowella
•   Simplify building rich UIs with Qt Quick
      – Provides widgets for Qt Quick – title bar, actions,
        list items, buttons, etc.
      – Styles to integrate with native look & feel
•   More Info
      – Open source, in development
      – General info:
        http://labs.qt.nokia.com/2010/09/10/building-
        the-future-reintroducing-the-qt-quick-
        components/
Mobility 1.1 – develop now,
Mobility 1.0 – use now   deploy to Ovi Store end of Q1 2011
Bearer Management API    Camera
Contacts                 Document Gallery
Location                 Feedback
Messaging                Landmarks
Multimedia               Maps/Navigation
Publish and Subscribe    Organizer
Service Framework        Service Framework – Out of process
Sensors
System Information
Versit
Qt           Install
  App
 (& SI)                                                      Required Qt version
                                                            not already installed?


                                                          Download and install Qt




http://wiki.forum.nokia.com/index.php/Nokia_Smart_Installer_for_Symbian
* Qt apps are native apps; therefore, the security model of the target operating system applies.

1. Determine the required security / privacy related features
      –     Most common:                         (See: wiki.forum.nokia.com/index.php/Capabilities )
              Feature                                            Capability
              Internet access, telephony, messaging              NetworkServices
              Access location (GPS, etc.)                        Location
              Camera, record audio                               UserEnvironment
              Contacts, Calendar                                 ReadUserData / WriteUserData
              Bluetooth                                          LocalServices
              IMEI, model name, battery status                   ReadDeviceData

2. Define the capabilities in the Qt project file (.pro)
       symbian:TARGET.CAPABILITY += Location ReadUserData
3. Get the right certificate during development
4. Publish




Need Certified Signed capabilities?
wiki.forum.nokia.com/index.php/Capabilities
-> Purchase a Publisher ID ($200 / year)
Submit to Certified Signed process @ www.symbiansigned.com
Windows                       Symbian                                MeeGo
                     Mac OS
                     Linux

                     N900                           Tech Preview:
                                                      out now




* Remember: Qt 4.6 apps (= w/o Qt Quick) supported on the Ovi Store for Symbian since summer 2010!
Symbian^3



                    Symbian^1
S60 3.1   S60 3.2     S60 5.0
•   Qt SDK
      – Help, examples
•   Discussion boards, wikis
      – Forum Nokia: http://www.forum.nokia.com/
      – Qt Developer Network: http://developer.qt.nokia.com/
•   e-Learning materials
      – http://qt.nokia.com/developer/learning/online/training/
      – http://qt.nokia.com/services-partners/qt-in-education/qt-in-education-course-material
•   Community
      – http://www.qtcentre.org/
Beginning Nokia Apps Development
                                              Ray Rischpater, Daniel Zucker. Apress.
                                              Complete end-to-end story of developing for Symbian and
                                              MeeGo with Qt (Quick) and HTML 5.
                                              Status: Qt 4.7, December 2010



                     Foundations of Qt Development
                     Johan Thelin. Apress.
                     More in-depth and technically oriented explanation of Qt – different approach to
                     many other books. Generic Qt, no mobile.
                     Status: 2007



C++ GUI Programming with Qt 4 (2nd edition)
Jasmin Blanchette, Mark Summerfield. Prentice Hall.
Official book for generic Qt development (no mobile). Good for looking things up or for enhancing your
knowledge, average for learning from scratch.
Status: Qt 4.3, 2008
• Official accreditation for individual developers
    – Confirms your development skills in Qt
    – Become more attractive in the job market!
    – Qt Essentials exam: 50 multiple choice questions, 60 minutes
    – Coming soon: Qt Advanced exams (widgets and C++)
• Active community member?
    – Be even more involved, improve your network and get rewarded!
    – Forum Nokia Champion
      http://www.forum.nokia.com/Community/Champions/
    – Qt Ambassador
      http://qt.nokia.com/qt-in-use/ambassadors/qtambassador/
•   Qt is a good way to teach software development
      – Instant results to motivate attendees
      – Graphical tools make entry easier
      – Flexible system, extensible with own libraries
      – … and still standard C++!
•   University support
      – Free Qt course materials under Creative Commons (PPT and OpenOffice)
        http://qt.nokia.com/services-partners/qt-in-education/qt-in-education-course-material
      – Forum Nokia University support
        http://www.forum.nokia.com/Developer_Programs/Forum_Nokia_for_universities/
•   Not happy with the way something works? Found a bug?
     – Submit your Qt bug report or suggestion to:
       http://bugreports.qt.nokia.com/
     – Unsure about what to include? The guide is here:
       http://developer.qt.nokia.com/wiki/ReportingBugsInQt
     – Found a bug somewhere outside of Qt?
       Report it here:
       http://www.forum.nokia.com/Support/
     – Also go to the above URL to buy a
       commercial support ticket if needed!
Want to learn more?
www.forum.nokia.com/Qt




Andreas Jakl
Senior Technical Consultant
Forum Nokia

Weitere ähnliche Inhalte

Was ist angesagt?

Latest Development Of MeeGo
Latest Development Of MeeGoLatest Development Of MeeGo
Latest Development Of MeeGoAmanda Lam
 
Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212Yoojoo Jang
 
上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idf
上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idf上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idf
上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idfcsdnmobile
 
How to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UXHow to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UXGail Frederick
 
Android application development
Android application developmentAndroid application development
Android application developmentFahad A. Shaikh
 
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5Amanda Lam
 
Meego의 현재와 미래(2)
Meego의 현재와 미래(2)Meego의 현재와 미래(2)
Meego의 현재와 미래(2)mosaicnet
 
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For GnomeRao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For GnomeMario B.
 
Qt everywhere
Qt everywhereQt everywhere
Qt everywhereNokia
 
S60 - Over the air
S60 - Over the airS60 - Over the air
S60 - Over the airNokia
 
Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010Nokia
 
Qt For Maemo - getting to the fast-lane (v2)
Qt For Maemo - getting to the fast-lane (v2)Qt For Maemo - getting to the fast-lane (v2)
Qt For Maemo - getting to the fast-lane (v2)Nokia
 
MeeGo现状及其主要优势
MeeGo现状及其主要优势MeeGo现状及其主要优势
MeeGo现状及其主要优势Guangyao Cheng
 

Was ist angesagt? (19)

MeeGo Mobile OS
MeeGo Mobile OSMeeGo Mobile OS
MeeGo Mobile OS
 
Latest Development Of MeeGo
Latest Development Of MeeGoLatest Development Of MeeGo
Latest Development Of MeeGo
 
MeeGo linux os
MeeGo linux os MeeGo linux os
MeeGo linux os
 
Google Android Naver 1212
Google Android Naver 1212Google Android Naver 1212
Google Android Naver 1212
 
上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idf
上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idf上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idf
上午6 4tiitoo stephan.odoerfer_20110406 we_tab slides idf
 
How to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UXHow to Customize the MeeGo Tablet UX
How to Customize the MeeGo Tablet UX
 
Android application development
Android application developmentAndroid application development
Android application development
 
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
 
Meego의 현재와 미래(2)
Meego의 현재와 미래(2)Meego의 현재와 미래(2)
Meego의 현재와 미래(2)
 
Razum
RazumRazum
Razum
 
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For GnomeRao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
Rao Yeleswarapu - Moblin Overview Apac Roadshow 2009 For Gnome
 
Qt everywhere
Qt everywhereQt everywhere
Qt everywhere
 
S60 - Over the air
S60 - Over the airS60 - Over the air
S60 - Over the air
 
Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010Nokia Qt SDK in action - Qt developer days 2010
Nokia Qt SDK in action - Qt developer days 2010
 
Qt For Maemo - getting to the fast-lane (v2)
Qt For Maemo - getting to the fast-lane (v2)Qt For Maemo - getting to the fast-lane (v2)
Qt For Maemo - getting to the fast-lane (v2)
 
MeeGo现状及其主要优势
MeeGo现状及其主要优势MeeGo现状及其主要优势
MeeGo现状及其主要优势
 
Android 1
Android 1 Android 1
Android 1
 
Ovi store ppt_serbia
Ovi store ppt_serbiaOvi store ppt_serbia
Ovi store ppt_serbia
 
Nicholas Foo
Nicholas FooNicholas Foo
Nicholas Foo
 

Andere mochten auch

The User is God
The User is GodThe User is God
The User is GodTim Samoff
 
智能手機與平版電腦系統及開發平台概覽
智能手機與平版電腦系統及開發平台概覽智能手機與平版電腦系統及開發平台概覽
智能手機與平版電腦系統及開發平台概覽Amanda Lam
 
Rapido, intuitivo, potente: Qt Quick all'assalto delle User Interfaces
Rapido, intuitivo, potente: Qt Quick all'assalto delle User InterfacesRapido, intuitivo, potente: Qt Quick all'assalto delle User Interfaces
Rapido, intuitivo, potente: Qt Quick all'assalto delle User InterfacesAlessandro La Rosa
 
Meego Italian Day 2011 - Prof. Carlo Caini
Meego Italian Day 2011 - Prof. Carlo CainiMeego Italian Day 2011 - Prof. Carlo Caini
Meego Italian Day 2011 - Prof. Carlo CainiFrancesco Baldassarri
 
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web SimulatorOSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web SimulatorGail Frederick
 
The Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGoThe Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGoGail Frederick
 

Andere mochten auch (6)

The User is God
The User is GodThe User is God
The User is God
 
智能手機與平版電腦系統及開發平台概覽
智能手機與平版電腦系統及開發平台概覽智能手機與平版電腦系統及開發平台概覽
智能手機與平版電腦系統及開發平台概覽
 
Rapido, intuitivo, potente: Qt Quick all'assalto delle User Interfaces
Rapido, intuitivo, potente: Qt Quick all'assalto delle User InterfacesRapido, intuitivo, potente: Qt Quick all'assalto delle User Interfaces
Rapido, intuitivo, potente: Qt Quick all'assalto delle User Interfaces
 
Meego Italian Day 2011 - Prof. Carlo Caini
Meego Italian Day 2011 - Prof. Carlo CainiMeego Italian Day 2011 - Prof. Carlo Caini
Meego Italian Day 2011 - Prof. Carlo Caini
 
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web SimulatorOSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
OSCON 2012: Design and Debug HTML5 Apps for Devices with RIB and Web Simulator
 
The Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGoThe Evolving Mobile Ecosystem and MeeGo
The Evolving Mobile Ecosystem and MeeGo
 

Ähnlich wie Meego Italian Day 2011 – Andrea Grandi

Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)
Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)
Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)Andreas Jakl
 
Nicholas Foo
Nicholas FooNicholas Foo
Nicholas Foofndc
 
Cutest technology of them all - Forum Nokia Qt Webinar December 2009
Cutest technology of them all - Forum Nokia Qt Webinar December 2009Cutest technology of them all - Forum Nokia Qt Webinar December 2009
Cutest technology of them all - Forum Nokia Qt Webinar December 2009Nokia
 
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...Andreas Jakl
 
Nokia Developer Offering Update
Nokia Developer Offering UpdateNokia Developer Offering Update
Nokia Developer Offering UpdateJanaina Pilomia
 
Symbian Based Mobile Software Development
Symbian Based Mobile Software DevelopmentSymbian Based Mobile Software Development
Symbian Based Mobile Software Developmenttoteb5
 
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community' Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community' videos
 
Qt - for stack overflow developer conference
Qt - for stack overflow developer conferenceQt - for stack overflow developer conference
Qt - for stack overflow developer conferenceNokia
 
Qt in depth - presentation for Symbian expo 2009
Qt in depth - presentation for Symbian expo 2009Qt in depth - presentation for Symbian expo 2009
Qt in depth - presentation for Symbian expo 2009Nokia
 
Rapid prototyping with open source
Rapid prototyping with open sourceRapid prototyping with open source
Rapid prototyping with open sourceAlison Chaiken
 
Andreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith QtAndreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith QtNokiaAppForum
 
S60 Web Runtime - Web2.0 Expo Europe 2008
S60 Web Runtime - Web2.0 Expo Europe 2008S60 Web Runtime - Web2.0 Expo Europe 2008
S60 Web Runtime - Web2.0 Expo Europe 2008petrosoininen
 
Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouchJonas Follesø
 
Mikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivityMikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivityMicrosoft Windows Embedded
 
O futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saberO futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saberDanilo Bordini
 

Ähnlich wie Meego Italian Day 2011 – Andrea Grandi (20)

Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)
Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)
Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)
 
Qt quick (qml)
Qt quick (qml)Qt quick (qml)
Qt quick (qml)
 
Software development with qt
Software development with qtSoftware development with qt
Software development with qt
 
Software development with qt
Software development with qtSoftware development with qt
Software development with qt
 
Nicholas Foo
Nicholas FooNicholas Foo
Nicholas Foo
 
Android Introduction
Android IntroductionAndroid Introduction
Android Introduction
 
Cutest technology of them all - Forum Nokia Qt Webinar December 2009
Cutest technology of them all - Forum Nokia Qt Webinar December 2009Cutest technology of them all - Forum Nokia Qt Webinar December 2009
Cutest technology of them all - Forum Nokia Qt Webinar December 2009
 
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
Quickstart: Qt for Windows, Symbian and Maemo / Meego v2.0.8 (January 10th, 2...
 
Nokia Developer Offering Update
Nokia Developer Offering UpdateNokia Developer Offering Update
Nokia Developer Offering Update
 
Symbian Based Mobile Software Development
Symbian Based Mobile Software DevelopmentSymbian Based Mobile Software Development
Symbian Based Mobile Software Development
 
Nfc developers nokia mit event 12 13 10
Nfc developers nokia mit event 12 13 10Nfc developers nokia mit event 12 13 10
Nfc developers nokia mit event 12 13 10
 
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community' Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
Jornada Desarrolladores: WAC: 'Wholesale Applications Community'
 
Qt - for stack overflow developer conference
Qt - for stack overflow developer conferenceQt - for stack overflow developer conference
Qt - for stack overflow developer conference
 
Qt in depth - presentation for Symbian expo 2009
Qt in depth - presentation for Symbian expo 2009Qt in depth - presentation for Symbian expo 2009
Qt in depth - presentation for Symbian expo 2009
 
Rapid prototyping with open source
Rapid prototyping with open sourceRapid prototyping with open source
Rapid prototyping with open source
 
Andreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith QtAndreas Jakl Software Development on Nokia Deviceswith Qt
Andreas Jakl Software Development on Nokia Deviceswith Qt
 
S60 Web Runtime - Web2.0 Expo Europe 2008
S60 Web Runtime - Web2.0 Expo Europe 2008S60 Web Runtime - Web2.0 Expo Europe 2008
S60 Web Runtime - Web2.0 Expo Europe 2008
 
Introduction to MonoTouch
Introduction to MonoTouchIntroduction to MonoTouch
Introduction to MonoTouch
 
Mikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivityMikehall FutureWorld 2010 - enabling connectivity
Mikehall FutureWorld 2010 - enabling connectivity
 
O futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saberO futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saber
 

Kürzlich hochgeladen

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 

Kürzlich hochgeladen (20)

Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 

Meego Italian Day 2011 – Andrea Grandi

  • 1. Andreas Jakl Senior Technical Consultant Forum Nokia 08 February, 2011 v3.0.2
  • 2. Distribute: Ovi Store ... and get famous and rich! Design, develop & test Choose development technology Qt, Web, Java Select target platform(s) MeeGo, Symbian, Series 40 Choose target market(s) for your app Europe, US, Africa, China, India, etc.
  • 3. Java apps Native apps (Qt) Web Apps Web Apps
  • 4.
  • 5.
  • 6.
  • 7. Native apps Use operating system and its functions directly (different code for networking, GPS, etc.) Operating System Symbian, MeeGo, Windows, Mac OS, Linux
  • 8. (if needed, direct access is still possible) Your App Qt framework Same code works on all platforms, covers many usecases (GPS, etc.) Operating System Symbian, MeeGo, Windows, Mac OS, Linux
  • 9. Using Qt SDK for – Dev. environment – Testing – Translation Publish to – Help – Ovi Store (Symbian, MeeGo) Developer App Source Code – Windows – Linux Using Qt framework for – Mac – User Interface – Embedded – Networking – Location (GPS) – Web integration – ...
  • 10.
  • 11. Cross-Platform • Mobile focus – Same source code for multiple platforms – Location, Maps – Maximum performance – native apps! – Sensors • Generic – Messaging (SMS, email) – User Interface – Contacts, Calendar – Declarative UI, animation, gestures, – Camera multi-touch, 3D (OpenGL) – System information – WebKit & JavaScript engine included – Haptics (vibration) – Multimedia (audio, video) • Extend – Networking, XML – Include any 3rd party C++ library / code – SQL, files, app settings – Container classes, object communication, 23 modules, threading, unit testing ~ 800 classes, ~ 9000 functions
  • 12. 4 million DL / day 190+ countries Discussion boards, One-time fee of €1. 103x operator billing e-learning videos, Submit an unlimited number of apps. examples SDK, toolchain, remote device testing, etc.
  • 13. Open Source qt.gitorious.org Qt can be used in commercial, closed-source apps Changes to Qt source must be shared Tech support available Included support
  • 14.
  • 15.
  • 16. Nokia E71 Nokia N8 (S60 3.1, 2008) (Symbian^3, 2010) • Qt for Symbian: – Works on S60 3.1+ (E71, E72, 5800, N97, N8, etc.) * – Look up platform versions: http://www.forum.nokia.com/devices/ Qt Compatibility Qt Pre-Installed * Qt can be installed on all compatible devices. Not all devices are enabled for Qt content in the Ovi Store. Current list of Ovi Store device deployment support for Qt apps: http://www.forum.nokia.com/Distribute/Packaging_and_signing.xhtml
  • 17. • Open Source Linux for Mobile Computers – Based on Maemo and MobLin – Developed by Nokia and Intel – Hosted by the Linux Foundation – www.meego.com
  • 18.
  • 19.
  • 20. Qt is the same on all platforms, but: – New UI concepts for mobile devices • Touch screen, limited screen space – Be careful • Network speed, roaming, battery – More possibilities • GPS, accelerometer, compass, haptics, multitouch • Platform-specific knowledge – Mainly hidden – A few concepts shine through • Security system (Symbian: capabilities, signing) • Need to use native operating system APIs when Qt doesn’t provide the functionality
  • 21. • You‘ll love Qt! – Easier setup • 1-click installation (Qt SDK) – Hides complexity • No descriptors, cleanup stack, two-phase construction, active objects – Less code, more efficiency Nokia 7650 (2001) Nokia’s first Symbian phone – Expand the reach • Deploy your app not only to Symbian, but also to MeeGo and other platforms
  • 22. • Expand your reach – Reach different market segment – Nokia: 30.8% global market share (Q4 2010, IDC) • Porting – Web: supported with all manufacturers – Native apps: different programming languages • Porting Guidelines – http://wiki.forum.nokia.com/index.php/Porting_Mobile_Applications_to_Qt
  • 23. • Keep your assets – Reuse images, sound & music • Screen resolution iPhone <= 3 480 x 320 3:2 iPhone 4 960 x 640 3:2 Nexus S 800 x 480 5:3 Symbian^1 & 3 Samsung Galaxy S 800 x 480 5:3 640 x 360 16:9 aspect ratio Nokia N900 800 x 480 5:3
  • 24. Engine: WebKit (latest version, great HTML 5 support) Dev. environment: Qt SDK - Storage of content on the device (HTML, CSS, JavaScript, Images) - Menu icon Engine: WebKit (earlier version, - Access to device features same as phone browser) Dev. environment: Aptana Studio / Nokia Web SDK
  • 25. Rewriting your source code is always required Java (parts in C++ possible) Native OpenGL ES 2.0 is Eclipse supported on all platforms, but steep learning curve and more effort! C++ Qt SDK Objective C Xcode
  • 26.
  • 27. • Qt SDK 1.1 Maemo – One-click installation • IDE, toolchain, documentation, examples Desktop Simulator – Tech Preview out now: Qt SDK works on http://labs.qt.nokia.com/2011/01/20/qt-sdk- Windows, Linux, 1-1-technology-preview-released/ Mac MeeGo Symbian (soon)
  • 28. • Efficient Testing – Quick launch – Scripting possibilities • Using JavaScript – Simulate mobile environments • Location, contacts, etc. – Simulate phone events • Battery, messages, etc. – Skins for different platforms / form-factors • Resolutions, orientation, etc.
  • 29. • Widgets (QLabel, QPushButton, etc.) – Use platform UI design – Support style sheets – Drag & drop UI designer Great for desktop. Static layouts make effects difficult. Small UI, different interaction paradigms.
  • 30. • Qt Quick – QML language and JavaScript – Declarative syntax, animations and states integrated – Drag & drop UI designer Very easy to make slick, fluid UIs. Most important for mobile devices! Ready-made UI components on their way * * Project page: http://bugreports.qt.nokia.com/browse/QTCOMPONENTS
  • 31. Desktop App Mobile App Game Widgets Qt Quick OpenGL Web
  • 32. ~ 300 lines of code, #include <QApplication> import Qt 4.7 ~ 15 files #include <QPushLabel> Rectangle { int main(int argc, char *argv[]) width: 360 { height: 360 QApplication app(argc, argv); QLabel helloLabel("Hello World"); Text { helloLabel.setAlignment(Qt::AlignCenter); anchors.centerIn: parent helloLabel.showMaximized(); text: "Hello World" } return app.exec(); } }
  • 33. Most cross-platform – Design and create any custom user interface – Same resolution: pixel precise on desktop, Symbian and MeeGo Windows 7 Simulator Maemo / MeeGo Symbian^3
  • 34. import Qt 4.7 Rectangle { • Describe UI by tree structure of width: 200 height: 200 property bindings Image { – Properties dynamically source: "QtLogo.png" anchors.centerIn: parent evaluated } – Communication through } signals & slots – Bindings to C++ code possible – Animate properties using states and transitions
  • 35. import Qt 4.7 Rectangle { width: 200 • Interactivity height: 200 – Interact with Image { source: "QtLogo.png" mouse / touch anchors.centerIn: parent – Execute JavaScript in signal } MouseArea { handlers anchors.fill: parent onClicked: parent.color = "green" } }
  • 36. import Qt 4.7 Rectangle { width: 200 • Dynamic property update height: 200 – Move image with mouse Image { source: "QtLogo.png" x: myMouse.mouseX y: myMouse.mouseY } MouseArea { id: myMouse hoverEnabled: true anchors.fill: parent onClicked: parent.color = "green" } }
  • 37. Viewer on PC & mobile: Qt C++ app to load and show QML Testing 100% pure QML directly Can include C++ for app logic E.g., created by Flowella
  • 38. Simplify building rich UIs with Qt Quick – Provides widgets for Qt Quick – title bar, actions, list items, buttons, etc. – Styles to integrate with native look & feel • More Info – Open source, in development – General info: http://labs.qt.nokia.com/2010/09/10/building- the-future-reintroducing-the-qt-quick- components/
  • 39. Mobility 1.1 – develop now, Mobility 1.0 – use now deploy to Ovi Store end of Q1 2011 Bearer Management API Camera Contacts Document Gallery Location Feedback Messaging Landmarks Multimedia Maps/Navigation Publish and Subscribe Organizer Service Framework Service Framework – Out of process Sensors System Information Versit
  • 40.
  • 41. Qt Install App (& SI) Required Qt version not already installed? Download and install Qt http://wiki.forum.nokia.com/index.php/Nokia_Smart_Installer_for_Symbian
  • 42. * Qt apps are native apps; therefore, the security model of the target operating system applies. 1. Determine the required security / privacy related features – Most common: (See: wiki.forum.nokia.com/index.php/Capabilities ) Feature Capability Internet access, telephony, messaging NetworkServices Access location (GPS, etc.) Location Camera, record audio UserEnvironment Contacts, Calendar ReadUserData / WriteUserData Bluetooth LocalServices IMEI, model name, battery status ReadDeviceData 2. Define the capabilities in the Qt project file (.pro) symbian:TARGET.CAPABILITY += Location ReadUserData
  • 43. 3. Get the right certificate during development
  • 44. 4. Publish Need Certified Signed capabilities? wiki.forum.nokia.com/index.php/Capabilities -> Purchase a Publisher ID ($200 / year) Submit to Certified Signed process @ www.symbiansigned.com
  • 45. Windows Symbian MeeGo Mac OS Linux N900 Tech Preview: out now * Remember: Qt 4.6 apps (= w/o Qt Quick) supported on the Ovi Store for Symbian since summer 2010!
  • 46. Symbian^3 Symbian^1 S60 3.1 S60 3.2 S60 5.0
  • 47.
  • 48. Qt SDK – Help, examples • Discussion boards, wikis – Forum Nokia: http://www.forum.nokia.com/ – Qt Developer Network: http://developer.qt.nokia.com/ • e-Learning materials – http://qt.nokia.com/developer/learning/online/training/ – http://qt.nokia.com/services-partners/qt-in-education/qt-in-education-course-material • Community – http://www.qtcentre.org/
  • 49. Beginning Nokia Apps Development Ray Rischpater, Daniel Zucker. Apress. Complete end-to-end story of developing for Symbian and MeeGo with Qt (Quick) and HTML 5. Status: Qt 4.7, December 2010 Foundations of Qt Development Johan Thelin. Apress. More in-depth and technically oriented explanation of Qt – different approach to many other books. Generic Qt, no mobile. Status: 2007 C++ GUI Programming with Qt 4 (2nd edition) Jasmin Blanchette, Mark Summerfield. Prentice Hall. Official book for generic Qt development (no mobile). Good for looking things up or for enhancing your knowledge, average for learning from scratch. Status: Qt 4.3, 2008
  • 50. • Official accreditation for individual developers – Confirms your development skills in Qt – Become more attractive in the job market! – Qt Essentials exam: 50 multiple choice questions, 60 minutes – Coming soon: Qt Advanced exams (widgets and C++)
  • 51. • Active community member? – Be even more involved, improve your network and get rewarded! – Forum Nokia Champion http://www.forum.nokia.com/Community/Champions/ – Qt Ambassador http://qt.nokia.com/qt-in-use/ambassadors/qtambassador/
  • 52. Qt is a good way to teach software development – Instant results to motivate attendees – Graphical tools make entry easier – Flexible system, extensible with own libraries – … and still standard C++! • University support – Free Qt course materials under Creative Commons (PPT and OpenOffice) http://qt.nokia.com/services-partners/qt-in-education/qt-in-education-course-material – Forum Nokia University support http://www.forum.nokia.com/Developer_Programs/Forum_Nokia_for_universities/
  • 53. Not happy with the way something works? Found a bug? – Submit your Qt bug report or suggestion to: http://bugreports.qt.nokia.com/ – Unsure about what to include? The guide is here: http://developer.qt.nokia.com/wiki/ReportingBugsInQt – Found a bug somewhere outside of Qt? Report it here: http://www.forum.nokia.com/Support/ – Also go to the above URL to buy a commercial support ticket if needed!
  • 54. Want to learn more? www.forum.nokia.com/Qt Andreas Jakl Senior Technical Consultant Forum Nokia