Symbian OS Application Development


Published on

Symbian OS market and application development

Published in: Technology
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Applications for Symbian OS are typically designed as two separate modules, a user interface and an engine. The engine implements all the functionality of the application, without any dependence on a particular user interface or look-and-feel. Symbian OS provides numerous component libraries and APIs to allow developers to write sophisticated engine functionality.FEP Base: Front End Processor. Input of characters not directly supported by hardware keys.UI - LAF : UI Look & Feel. Allows changing appearance of Uikon controls without modifying Uikon code .
  • S60:S60 platform is used in the majority of Symbian OS smartphones shipped to date. When programming for S60, since there is no touch screen, pointer events are not supported.UIQ:The UIQ Platform is owned by UIQ Technology AB – a wholly-owned subsidiary of Symbian Ltd. The platform originates from a Symbian reference design and is licensed to several handset manufacturers, such as Sony Ericsson, Motorola, BenQ etc.UIQ supports both keypad and touchscreen input (through virtual keyboard, handwriting recognition or interaction with typical UI controls).MOAP:MOAP (Mobile Oriented Applications Platform) is the software platform for NTT DoCoMo's FOMA service for mobile phones. NTT DoCoMo is mobile phone operator in Japan.Freedom of Mobile Multimedia Access (FOMA) : It is 3G service provided by NTT.MOAP(S) is supported by Symbian OS based phones from a number of manufacturers MOAP(S) is not an open development platform.
  • Runtime environment: It is the term used to describe an application execution framework running on a hosting platform (i.e. Flash or Java running on a desktop or mobile) but is sometimes incorrectly used to refer to the programming language only.
  • Carbide.vs is a plug-in that allows Visual Studio users to develop C++ code for Symbian OS platforms including the S60 platform and the Series 80 platform.
  •  APIs associated with more sensitive capabilities are described as ‘system’ or ‘extended capabilities’. These system capabilities would be difficult for a user to understand, so it is inappropriate to give users the ability to grant them at install time, since the risks of doing so would be unclear to them.
  • Services like networking, telephony, or file system support are placed in the OS Services Layer or Base Services Layer.
  • OMA : Refers to Open Mobile AllianceSymbian already allows mobile phone companies access all relevant source code to allow them to develop tightly integrated and optimised solutions. The same access, to over 95% of Symbian's source code, will be extended to members of the Symbian Platinum Partner program.
  • Categorization of Companies in SPN:Device Management and SyncEnterpriseGamingInternet and ApplicationsLBSMessagingMultimediaProfessional ServicesNetworking SemiconductorsTelephonyTools
  • Converged device means Phone + Personal Digital handset.
  • Symbian facing stiff competition from Apple’s iphoneMicrosoft’s MSFTResearch In Motion’s BlackberryGoogle’s Android
  • The Base Services Layer is the lowest level reachable by user-side operations. it includes the File Server and User Library, the Plug-In Framework which manages all plug-ins, Store, Central Repository, DBMS, and cryptographic services.
  • Symbian OS Application Development

    1. 1. Contents  Overview of Symbian OS  Symbian OS Market Analysis  Symbian OS Architecture  Symbian OS Runtimes  Choice of Development Language  Essentials to Program on S60 & UIQ  Compilers and IDEs to Develop Symbian OS Application  Symbian Signing Feature
    2. 2. Symbian OS Overview
    3. 3. Symbian OS Overview (contd.)  Nokia to acquire Symbian Limited by Q4 of 2008.  Unified Symbian Foundation platform to replace S60 and UIQ platform.  Will enable evolution of the leading open mobile platform.  Will Enable greater innovation in services and applications.
    4. 4. Symbian OS Overview (contd.)  Open Operating System designed for Mobiles with associated libraries and user interface frameworks.  Based on Microkernel Architecture  Means that the minimum necessary things are within the kernel to improve robustness, availability, and responsiveness.  Features provided in kernel are : Scheduler,  Memory management  Device drivers   Design Rules of Symbian OS : Integrity and security of Data  Save User Time  Emphasis on Conserving Mobile resources 
    5. 5. Symbian OS Overview (contd.)  Symbian OS is an “Open Platform” - Allows to Install Aftermarket Software. - C++ APIs publicly documented and Freely available. - Supports Open Standards (Ex: OMA ).  Source Code available to : -Major mobile manufacturers -Symbian Platinum Program member Companies.
    6. 6. Symbian partner Network(SPN)  Members of SPN have exclusive access to a range of  Technical benefits  Marketing benefits  Business development benefits  How to join SPN  By online submission of Application form and fees  Cost of Membership  $1500 Annual fee
    7. 7. Symbian OS Market Analysis Source : Canalys Estimates
    8. 8. Symbian OS Market Analysis Source : Canalys Estimates
    9. 9. Symbian OS Market Analysis
    10. 10. Symbian OS Market Analysis Worldwide Converged Devices Market Shares for the First Quarter of 2006 Source : Canalys Estimates
    11. 11. Symbian OS Market Analysis Worldwide Converged Devices Market Shares for the Fourth Quarter of 2007 Source : Canalys Estimates
    12. 12. Symbian OS Architecture  The Symbian OS System Model contains the following layers :  UI Framework Layer  Application Services Layer (Ex: Java ME)  OS Services Layer  Generic OS Services  Communication Services  Multimedia and Graphics Services  Connectivity Services  Basic Services Layer  Kernel Services and hardware Interface Layer
    13. 13. Symbian OS Architecture (contd.)
    14. 14. UI Platforms  Flexible architecture that allows Different phone platforms to run on Core OS.  Widely Used phone platforms :  S60  UIQ  MOAP
    15. 15. Common Symbian UI Platform
    16. 16. Symbian OS Application Runtimes  Java  Flash  Python  .Net
    17. 17. Choice of Development Language  Symbian C++ is most powerful.  Provides greatest access to Capabilities of OS  Fastest because it runs on Natively Compiled Code
    18. 18. Essentials to program on Symbian OS  Hardware Requirements :  Processor above 1.5 Ghz  RAM : 512MB and Above  OS : Windows 2000/XP /Vista  Phone Handset  Ability to deploy code on Phone(Ex: Memory Stick)  Software Requirements :  S60 or UIQ SDK  IDE(Editor, Compiler, Linker) supported by S60 or UIQ SDK
    19. 19. Key Elements of SDK  Windows-based emulation of a phone to develop and test application  Header files and binary library files for emulator development and running code.  Compiler  Additional tools  Documentation
    20. 20. Emulator  Windows Application to simulate Phone Hardware on PC.  Few Differences to HW devices.  Enables PC based Development.  Supports Debugging.
    21. 21. S60 SDKs
    22. 22. UIQ SDKs
    23. 23. Compilers & IDEs for development  Carbide.c++ IDE  Based on Eclipse  Express Edition is free  Developer Edition 299 Euros.  Professional Edition 1299 Euros.  Microsoft Visual Studio .NET IDE using Carbide.vs  Carbide.vs is a plug-in that allows Visual Studio users to develop C++ code for Symbian OS platforms.
    24. 24. Compilers & IDEs for development  CodeWarrior  It is a common IDE which includes Compiler for Emulator and real phone hardware.  Maintained by Nokia  Superseded by Carbide.c++  GCC-E target compiler  Generally used to build binaries to run on phone hardware.  RVCT target compiler
    25. 25. Symbian Signing Feature  Ensures minimum standards for application behavior.
    26. 26. Symbian Signing Feature (contd.)
    27. 27. References   