Top Banner

of 44

NFC_symbian.pdf

Apr 04, 2018

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 7/29/2019 NFC_symbian.pdf

    1/44

    NFC on Nokia & Symbian

    Introduction for Developers

    Jure SustersicDeveloper Relations

    Forum Nokia

  • 7/29/2019 NFC_symbian.pdf

    2/44

    11/15/2010

    Agenda

    Nokia Developer offering

    NFC Architecture in Symbian & API deep dive Application development

    Distribution

  • 7/29/2019 NFC_symbian.pdf

    3/44

    Developer offering

  • 7/29/2019 NFC_symbian.pdf

    4/44

    11/15/2010

    Platform Positioning

  • 7/29/2019 NFC_symbian.pdf

    5/44

    11/15/2010

    Devices and Platforms, clarified.

    Phones(Series 40)

    Smartphones(Symbian)

    Compute(Maemo / MeeGo

    Develop Java apps

    Develop Native Apps (Qt)

    Develop Web Apps

    / /20 0

  • 7/29/2019 NFC_symbian.pdf

    6/44

    11/15/2010

    Smartphone OS Shipments Q2 2010

    Data: Canalys

    Source: http://www.allaboutsymbian.com/news/item/11899_Canalys_Q2_stats_show_Nokias_S.php

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    7/44

    11/15/2010

    Smartphone Market Share in 2014

    Data: IDC Worldwide Quarterly Mobile Phone Tracker, September 7, 2010

    Source: http://www.idc.com/getdoc.jsp?containerId=prUS22486010

  • 7/29/2019 NFC_symbian.pdf

    8/44

    NFC on Symbian, API deep dive

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    9/44

    11/15/2010

    NFC use cases abstracted

    Connect easily

    with other devices

    (speakers, headsets)

    Get information, start

    applications, register toservices with the simpletouch of a tag

    TransferEasy Connect

    ServicesSecure

    transactions

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    10/44

    11/15/2010

    NFC Services APIs

    API Description

    NFC Discovery API Provides methods to subscribe and discover tags and ND

    NFC Tag Extension API Provides implementation and access (read/write) metho

    types of NFC targets.

    NDEF API Provides methods for handling NDEF messages and acce

    messages on tags.

    NFC Peer-to-Peer API Provides the LLCP API for peer-to-peer communications

    devices.

    NFC Content Handler API Provides the ECOM plug-in interface for subscribing and

    messages.

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    11/44

    11/15/2010

    Symbian Platform NFC API

    Exposes NFC middleware at the platform level

    Aimed at Symbian platform developers Platform specific coding/skills needed

    Low abstraction

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    12/44

    11/15/2010

    Symbian Native development

    Symbian^3 SDK

    Comes with Carbide.c++ IDE

    NFC Plugin for S^3 SDK

    Adds NFC services libraries

    Adds NFC emulation support fordevice-less development & testing

    Delivery planned with 1st NFCdevice launch

    Optional Qt for Symbian

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    13/44

    / /

    Qt NFC API

    Built on top of Platform Level API with same

    functionality Cross Platform

    Integrated into productive toolchain (Nokia Qt SDK)

    Future proof UI toolkit integration (Qt Quick)

    Nokia preferred framework for app development

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    14/44

    Qt development

    Nokia Qt SDK

    Comes with QtCreator IDE and devicesimulator

    Qt Mobility (NFC API) 1.x will add NFCAPI support

    Initially as an addon viahttp://qt.nokia.com/products/qt-addons/mobility

    Available by 1st NFC device launch Later integrated with the Nokia Qt SDK

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    15/44

    J2me NFC API JSR-257

    Complete implementation of the JSR-257

    Contactless Communication API + Nokiaextensions

    com.innovision.rf(NFC Forum Type 1,

    Innovision Jewel, Innovision Topaz) com.nokia.nfc.nxp.mfstd (MIFARE 1k, MIFARE

    4k)

    com.nokia.nfc.nxp.simpletag (NFC Forum Type2 - MIFARE Ultralight)

    com.sony.felica (NFC Forum Type 3 - Sony

    FeliCa)

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    16/44

    Java Development

    Java Mobile development IDE

    Eclipse with Mobile NetBeans

    Other

    Symbian^3 SDK Support for JSR-257 + Nokia extensions available by NFC de

  • 7/29/2019 NFC_symbian.pdf

    17/44

    Application development

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    18/44

    What is Qt?

    Develop C++ code only once

    Deploy for multiple platforms

    with native look & feel!

    More than UI 23 modules, around 800 classes, 9000 functions

    Development tools: IDE, UI designer, help system, translation

    Maximum performance

    Native code on all platforms

    Still possible to use platform specific APIs!

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    19/44

    Platforms

    C++

    Java

    PythonAda

    Pascal

    Perl

    PHP

    Maintained by theQt open source community.

    Not officially supported by Nokia.

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    20/44

    Develop where youre at homeChoose if you want to develop your app using

    Windows, Mac or Linux!

    All trademarks and logos are property of their respective owners.

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    21/44

    Longer history than you might think

    Focus on mobile platforms (Symbian, Maemo, MeeGo), dedicated m

    Nokia purchases Trolltech

    Qt 4.0 leads to new KDE 4 desktop

    Qtopia platform for mobile phones & PDAs

    First public release through newsgroups (Qt 0.90)

    Dual licensing: commercial & free for open source

    Decided to go into business

    Q looked beautiful in Emacs font. t for toolkit

    Company : Quasar Technologies (later: Trolltech)

    Development started

    Cross platform GUI toolkit was needed Eirik Chambe-EngNord

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    22/44

    Youre using it already!

    and many, many m

    All trademarks and logos are property of their respective owners.

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    23/44

    Symbian & Qt

    Qt for Symbian:

    Compatible to S60 3.1+ (Nokia N95, E71)

    Get your app running on 175 000 000 devices*!

    Nokia devices platform versions:http://www.forum.nokia.com/devices/

    Series 601.0

    Series 602.0

    (+ 3 FPs)

    S603.0

    S603.1

    S603.2

    S60 5.0=

    Symbian^1

    Symbian^2 Symbia=

    Symbian pl

    Qt Compatibility Qt

    * Qt can be installed on all compatible devices. Not all devices are enabled in the Smart Installer, which is required for deploying Qt apps through the Ovi Store.More devices are constantly added as compatibility tests are being performed. Current Smart Installer device deployment support:

    http://www.forum.nokia.com/Distribute/Packaging_and_signing.xhtml

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    24/44

    Qt pre-installedon new Symbian

    platform phones

    Upgrade your phone with

    future user experienceenhancements!

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    25/44

    Qt: used in all (future) platforms

    ... start develo(and switch to MeeGo when d

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    26/44

    Qt SDKs from qt.nokia.com

    Common Qt APIs

    Qt SDK forMac OS

    Mac OS X

    Qt SDK forLinux / X11

    Linux (X11)Symbian

    Nokia QtSDK

    Maemo /(MeeGo)

    Simulator

    Qt SDK forWindows

    WindowsXP / Vista / 7

    Qt SDK forWindows CE

    WindowsCE / Mobile

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    27/44

    Nokia Qt SDK

    One-Click installation:

    Development tools

    Build for and debug in real devices

    Symbian

    MeeGo / Maemo

    Test on host PC

    Simulator

    Qt Mobility

    No extra device SDKs required anymore

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    28/44

    Nokia Qt SDK: Simulator

    Efficient Testing

    Quick launch

    Scripting possibilities

    Using JavaScript

    Simulate Qt Mobility Project features

    Location, contacts, etc.

    Simulate phone events Battery, messages, etc.

    Skins for different platforms / form-factors

    Resolutions, orientation, etc.

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    29/44

    Create Your Own Web Browser in 5 Minu

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    30/44

    Demo: Web Browser

    Show web page with address bar and zoom slider

    Create UI using designer

    Setup project (.pro) for WebKit and networking support:

    Optional: setup proxy use during app startup

    On clicked() signal of push button: load URL into web view

    QT += core gui webkit network

    symbian {

    TARGET.CAPABILITY += NetworkServices

    ...}

    #include

    QNetworkProxyFactory::setUseSystemConfiguration(true);

    ui->webView->load(QUrl::fromUserInput(ui->lineEdit->text()));

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    31/44

    Demo: Web Browser

    Full-page zoom slider

    Adapt properties to set range

    On valueChanged() signal:

    convert to floating point and set zoom factor

    ... and your web browser is finished!

    qreal zoom = (qreal)value / 10.0;

    ui->webView->setZoomFactor(zoom);

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    32/44

    Qt Mobility

    Qt: Desktop Mobile

    Requires new APIs for Sensors

    Location Messaging

    etc.

    Qt Mobility: new cross-platform APIs for mobile use cases

    Back-end implementation on all platforms where it makes s

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    33/44

    Qt Mobility

    Mobility 1.0

    Bearer Management APIContactsLocation

    MessagingMultimedia

    Publish and SubscribeService Framework

    SensorsSystem InformationVersit

    Mobility 1.1 (Beta)

    Camera

    Document GalleryFeedbackLandmarks

    Maps/NavigationOrganizer

    Service Framework Out of pro

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    34/44

    Extend Qts Reach with Native Code

    Use APIs that dontexist in Qt

    Extend Qt APIs withextra features

    Squeezeperforma

    Qt applic

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    35/44

    The Future of Qt

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    36/44

    Qt 4.7

    Get Qt 4.7 with QML support

    Desktop (Win, Linux, Mac)

    Download Qt SDK from qt.no

    N900 (Maemo)

    Update Nokia Qt SDK, device

    Symbian

    In next update of Nokia Qt S Need to test now?

    Download Qt for Symbian fr

    Symbian^3:http://wiki.forum.nokia.com/inde

    n%5E3_-_developer_version

    End-user

    deployment of

    Qt 4.7 to Symbian:

    Q1 2011

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    37/44

    Qt Quick (Qt User Interface Creation Kit)

    Create UIs as a designer

    Without C++ knowledge Using visual tools

    Module: Declarative UI

    Based on QML language

    (extension to JavaScript)

    http://blog.qt.nokia.com/2010/02/15/meet-qt-quick/

    11/15/201011/15/2010

  • 7/29/2019 NFC_symbian.pdf

    38/44

    Learning QML

    A few tutorials

    Getting Started Programming with QMLhttp://doc.qt.nokia.com/4.7/gettingstartedqml.html

    Qt Quick Tutorial

    http://developer.qt.nokia.com/wiki/Qt_Quick_Tutorial

    Qt Quick Game programming 5 in a row

    http://quitcoding.com/?page=work#qtquick

  • 7/29/2019 NFC_symbian.pdf

    39/44

    Application Distribution

    11/15/2010

  • 7/29/2019 NFC_symbian.pdf

    40/44

    *Chetan Sharma Consulting, March 2010

    ** M:Metrics, August, 2010

    The global mobile appseconomy is set to be worth

    $17.5 billion by 2012.*

    The global mobile advertising market willbe valued at over

    $16 billion by 2011.

    **

  • 7/29/2019 NFC_symbian.pdf

    41/44

    11/15/2010

    O i St St ti ti

  • 7/29/2019 NFC_symbian.pdf

    42/44

    Ovi Store Statistics

    http://www.forum.nokia.com/Distribute/Ovi_Store_statistics.xhtml

    Users in 190+ countries190+ countries190+ countries190+ countries2.7 million application downloads / day2.7 million application downloads / day2.7 million application downloads / day2.7 million application downloads / day

    135+ device models135+ device models135+ device models135+ device models supported

    Storefront available in 30 languages30 languages30 languages30 languagesOperator billing with 99 operatorsOperator billing with 99 operatorsOperator billing with 99 operatorsOperator billing with 99 operators in 27 countries (growing)

    11/15/2010

    O i St

  • 7/29/2019 NFC_symbian.pdf

    43/44

    Ovi Store

  • 7/29/2019 NFC_symbian.pdf

    44/44

    Thank [email protected]

    For more information visit: http://forum.nokia.com