Developing for Symbian OS Andrei Tabarcea, 31.01.2011.

Slides:



Advertisements
Similar presentations
Web Toolkit Julie George & Ronald Lopez 1. Requirements  Java SDK version 1.5 or later  Apache Ant is also necessary to run command line arguments 
Advertisements

Java 2D Training. Basic Tools Java SDK 1.4x Wireless Toolkit 2.x NetBeans IDE + mobility pack Global Code editor Text Comparer Tools Graphics Editor Sprite.
Building Localized Applications with Microsoft.NET Framework and Visual Studio.NET Achim Ruopp International Program Manager Microsoft Corp.
Mobile App Development Using: Presented by Tyler Richey Images from
Mobile Apps in the Enterprise, Part 1 Who’s Doing What Presented by Sean Gallagher
Presentation 11: SOAP on small devices. Ingeniørhøjskolen i Århus Slide 2 af 14 Outline Which small devices? What are the limitations and what kind of.
Programming Mobile Applications with Android
Programming with Android: SDK install and initial setup Luca Bedogni Marco Di Felice Dipartimento di Informatica: Scienza e Ingegneria Università di Bologna.
Mobile Learning Project Members Ravindra Solanki Anamika Singh Rajul Maheshwari Project Guide Prof. Kailas K Devadkar October 2002.
Writing Your First MIDlet Running JAVA on a Cell Phone Jon A. Batcheller January 27, 2004.
1 Mobile Computing Mobile First (formerly Worklight) Copyright 2015 by Janson Industries.
Cosc 4730 Installing IDEs And a note on carriers..
DEPARTMENT OF COMPUTER ENGINEERING
Remote Unit Testing Brian Pruitt-Goddard Alex Riordan.
V0.01 © 2009 Research In Motion Limited Introduction to Java Application Development for the BlackBerry Smartphone Trainer name Date.
Google Android as a mobile development platform T Internet Technologies for Mobile Computing Olli Mäkinen.
ANDROID PROGRAMMING MODULE 1 – GETTING STARTED
UFCFX5-15-3Mobile Device Development Android Development Environments and Windows.
ECLIPSE IDE N AME : A SHOK P ADMARAJU C OURSE : T OPICS ON S OFTWARE E NGINEERING I NSTRUCTOR : D R. S ERGIU D ASCALU.
Introduction to Android Platform Overview
The PhoneGap History Doncho Minkov Telerik Academy academy.telerik.com Technical Trainer
Python for S60 SmartPhones PostPC Workshop Fall 2006 Amnon Dekel.
Symbian os with smart phones Guided by: Hetal A Josiyara
Creation of hybrid portlet application for file download using IBM Worklight and IBM Rational Application Developer v9 Gaurav Bhattacharjee Lakshmi Priya.
Android Application Development 2013 PClassic Chris Murphy 1.
Android Introduction Platform Overview.
Sayed Ahmed BSc. Eng. In Computer Sc. and Eng. (BUET), Bangladesh MSc., Computer Science, Canada President/Chief Architect/Lead Developer Justetc (Just.
EclipseME Java Micro Edition The Eclipse Way Craig Setera April 19, 2006.
Mobile Programming Lecture 1 Getting Started. Today's Agenda About the Eclipse IDE Hello, World! Project Android Project Structure Intro to Activities,
Android 2: Introduction to the Technology Kirk Scott 1.
Lightning Talk Fred Rodriguez Nguyen Do CPSC 473 May 6, 2012.
Lecture 8 – Platform as a Service. Introduction We have discussed the SPI model of Cloud Computing – IaaS – PaaS – SaaS.
Sikuli Ivailo Dinkov QA Engineer PhoneX Team Telerik QA Academy.
Title slide to be used at the start of a module. Developing Mobile Apps Roland Guijt
© Keren Kalif Intro to Android Development Written by Keren Kalif, Edited by Liron Blecher Contains slides from Google I/O presentation.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
Introduction CIS 136 Building Mobile Apps 1. What is a mobile app? 2  Computer program  Designed for small devices  Smartphones  Tablets  Other handhelds.
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
Sayed Ahmed Computer Engineering (BUET), Bangladesh MSc., Computer Science, Canada President/Chief Architect/Lead Developer Justetc (Just et cetera) Technologies.
Introducing NativeScript [Pavel Kolev Software Telerik: a Progress company]
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Android for Java Developers Denver Java Users Group Jan 11, Mike
© 2016 Cengage Learning®. May not be scanned, copied or duplicated, or posted to a publicly accessible website, in whole or in part. Android Boot Camp.
© 2002 IBM Corporation Confidential | Date | Other Information, if necessary June, 2011 Made available under the Eclipse Public License v Mobile.
 Installation of Android Development Environment  Creating the App with OpenGL ES API  Running the App on Emulator Android App Development.
Trunica Inc. 500 East Kennedy Blvd #300 Tampa, FL Cross Platform Mobile Apps With Cordova and Visual Studio 2015 © Copyright 2015.
The way of hybrid mobile development Hybrid Mobile Applications Telerik Software Academy
KAASHIV INFOTECH Presents INTEL XDK For Inplant Training / Internship, please download the "Inplant training registration form" from our website
Symbian OS 1.  Symbian  Symbian OS is an operating system and software platform that designed for smart phones and maintained by Nokia.  Symbian platform.
1 KaaShiv InfoTech  Presents  INTEL XDK For Inplant Training / Internship, please download the "Inplant training registration form" from our website.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
The Whole new Experience - By Mahesh Chauhan. Its sounds strange but the fact is that :-  More than 90% of the CPUs in the world are not in desktops.
 Can access all API’s made available by OS vendor.  SDK’s are platform-specific.  Each mobile OS comes with its own unique tools and GUI toolkit.
Google Web Toolkit for Mobile Applications Development INGENUITY AT ITS BEST……………….
Best 5 Mobile App Development Tools for Developer's to think beyond the Limitation.
Top 5 IDE that Simplifies PHP Development Biztech IT Consultancy Pvt. Ltd. | |
Build Cross-Platform Mobile Apps Using Visual Studio A Telerik webinar by Jeffrey T. Fritz March 27, 2014 AND.
Guide To Develop Mobile Apps With Titanium. Agenda Overview Installation of Platform SDKs Pros of Appcelerator Titanium Cons of Appcelerator Titanium.
Mobile App Development Using:
Introduction to Mobile Computing
Mobile Testing – Survival Knowledge – Part V
Browsers and Web Platforms
Lab 3: More Phone-Based Techniques
Mobile Learning Project Members Project Guide Ravindra Solanki
Android.
Apache Cordova Overview
Logo here Module 3 Microsoft Azure Web App. Logo here Module Overview Introduction to App Service Overview of Web Apps Hosting Web Applications in Azure.
A Canonical Production January 2013
Mobile App Development
Android Platform, Android App Basic Components
Presentation transcript:

Developing for Symbian OS Andrei Tabarcea,

Content 1. History and market share 2. Developing applications for Symbian 1. Symbian C++ 2. Java ME 3. Web Runtime Toolkit 3. Publishing applications for Symbian

A Bit of History Symbian OS is a multitasking smartphone operating system 1998 – Started as a partnership between companies such as Nokia, Ericsson, Motorola and Psion (Symbian Ldt.) 2008 – Symbian Ldt. was bought by Nokia and turned into Symbian Foundation February 2010 – Symbian became open source November 2010 – Nokia took over the development of Symbian OS and Symbian Foundation became a licensing-only organisation

Global Market Share Symbian is still the most popular smartphone OS in the world Android is predicted to take over the first place by 2015 Smartphone OS Market Share Q Source: Gartner Research

Symbian OS Does Not Exist in the USA

Version History Series 60 3 rd Edition (e.g. Nokia N95, Nokia C5-00) Symbian^1 (aka Series 60 5 th edition, e.g. Nokia N97, 5230, 6800 XpressMusic) Symbian^2 (some phones from DoCoMo and Sharp) Symbian^3/Symbian^4 (e.g. Nokia N8, C6-01, C7-00, E7-00)

Developing for Symbian OS Symbian OS supports development using: Symbian C++ (and QT Framework) Java ME HTML, CSS and Javascript Web Runtime (WRT) Python Others (Standard C/C++, Flash Lite, Ruby,.NET etc.)

Developing Applications for Symbian Register on Install specific SDK/emulators. Options: Symbian emulators: S60 3 rd edition FP1, FP2, S60 5 th edition, Symbian^3 Java ME emulators: WTK (Java Wireless Toolkit), Java Platform Micro Edition SDK Install IDE with mobility plugins (Eclipse, Netbeans, Carbide, Aptana Studio etc.) Install Nokia OVI Suite for easier phone access Develop, build and deploy Publish to website and/or OVI Shop

Symbian C++ Advantages: Full access to Symbian API’s and phone resources Applications are not run by virtual machine Better debugging and profiling tools It’s the primary language for writing Symbian OS Disadvantages: Steep learning curve Complicated application signing process You have to do your own memory management

Symbian C++ Particularities Was created before C++ itself (1998) Later C++ additions (exceptions, namespaces) are not supported Has some non-standard C++ characteristics (e.g. own mechanism for exception handling, specific classes for string manipulations etc.) Most data types are defined with macros Projects have a complex structure There are 4 basic class types Other particularities: leaves, traps, panics, CleanupStack and Active Objects instead of threads

Symbian C++ Class Types T – Data type classes. C – Heap allocated classes derived from CBase R – Resource classes. M – Interfaceclasses(‘mixins’)

Recommended IDE – Carbide.c++ Based on Eclipse IDE Carbide.c++ is provided in two different tool packages: Application Development Toolkit (ADT) contains tools for application development, including the IDE, debugger, and analysis tools Product Development Toolkit (PDT) contains tools for contribution and product creation Alternative: CodeWarrior

QT Framework QT is a cross-platform application framework Will be the new UI Framework of Symbian OS Development company (Qt Development Frameworks) is owned by Nokia Easy porting to Maemo OS is aimed Best chance to save the future of Symbian OS Development can be done with Carbide C++ or QT Creator IDE

Java ME Advantages: Easier to develop Compatibility with other platforms (theoretical) Garbage Collector takes care of memory management Certification is simpler Disadvantages: Light version of Java Access to some resources is restricted (even with certification) Different implementations of Java Virtual Machine on different phone models Bad memory management Default UI library (lcdui) is very restricted and difficult to customize (needs use of an external library such as LWUIT) Default UI programming pattern is not suited for big projects

Recommended IDEs Eclipse vs. NetBeans: Eclipse is faster Carbide.c++ is a modified version of Eclipse NetBeans has better editors (screen editors, flow editors) NetBeans has better support for sharing code between projects

Emulators Symbian emulators vs Sun Java Emulators Sun Java emulators are much faster and use less disk space/resources Sun Java emulators simulate ideal case Symbian emulators simulate how the application actually runs on a phone Symbian emulators have some stability issues

Web Runtime Toolkit Widgets Advantages: Use of HTML/CSS/Javascript allows easily creating good interfaces Easy access to Nokia API’s such as OVI Maps Disadvantages Few models support it (since S60v5) Main purpose is to develop home-screen widgets (focused web applications) Restrictions in using HTML and Javascript Restrictions in using some resources

Publishing Applications for Symbian OS Options: Publish through own website Publish through Ovi Store 1-time publisher registration fee of 1€ Nokia offers a 70% revenue share of gross sale (as of 2010) Now Nokia offers for free: Java Verified signing for Jave ME apps Express signing for Symbian C++ apps

Application signing for Symbian OS Andrei Tabarcea

Java ME Steps: Add which permissions to acquire in.jad file (javax.microedition.io.Connector.http) Get code certificate from a trusted authority: Verisign Thawte - signing/index.htmlhttps:// signing/index.html Sign the.jar file using IDE or command line utilities

Buy Certificate Generate a Certificate Signing Request (public key generated by IDE) Buy certificate: Certificate costs $499 per year (100$ per year discount on longer periods) from Verisign Certificate costs $299 per year ($549 per 2 years) from Thawte Provide authorization credentials Pay and pick up certificate

Symbian C++ - Capabilities

Signing Types

How to Get? Publisher ID: purchase from TC TrustCenter ( ) - $200 per yearwww.trustcenter.de/order/publisherid/dev Symbian Signed account (free) Certificate creation tools /pub/Symbian+Signed+Tools /pub/Symbian+Signed+Tools

How to Use Open Signed Online Go to SymbianSigned.com Create account Generate UID for your application Compile application using provided UID Get IMEI from the devices you want to test the application on Upload application to nedOnline.do nedOnline.do Wait for confirmation and go to confirmation link Wait for download and go to download link

Example

How to Express Sign Get Publisher ID from TC TrustCenter ($100) Purchase Content ID for TC TrustCenter ($20 per signing) Sign the application with Publisher ID using SignSis Submit application to Symbian Signed Download signed application from Symbian Signed Optionally, the application could be selected for audit

Ovi Shop Nokia can sign your Java ME apps as Java Verified Nokia can sign you Symbian C++ apps as Express Signed (Certificates are valid for only three months) You have to register as publisher (€1) Nokia does a QA review, ensuring that the app meets signing criteria as well as their own test requirements

Start GPS on Java ME

Questions Thank you!