[go: up one dir, main page]

100% found this document useful (2 votes)
2K views22 pages

Hitch Hikers Guide Runtime Booklet

Download as pdf
Download as pdf
Download as pdf
You are on page 1/ 22

The Hitch Hiker’s Guide to the Runtime Space

Contents
The Hitch Hiker’s Guide to the Runtime Space
Page

The Big Question: 4-5


Webite or client application?

Symbian C++ 6-7

Qt on Symbian 8-9

Open C and Open C++ 10 - 11

Python 12 - 13

Widgets 14 - 15

Web Browser 16 - 17

Java ME 18- 19

Flash Lite 20- 21

Symbian Books 22- 23

3
The BIG Question:
Website or client application?

You may have discovered that the Runtime A growing number of entrants to the
Space is not only mind-bogglingly big mobile space see the option of building
and bewildering, but also that most of a mobile-specific website as a cheaper
the things that happen in it are deeply and more flexible alternative to developing
intertwined with the user experience. a client application. However, there are
advantages and disadvantages to both
While all questions of the runtime features, depending on the details of your service
the pros and cons, the cost, the required and, as always, there is a trade-off
developer skills and the market share are between quality, functionality, speed of
to be resolved, one big question stands development and cost.
out: ‘website or client application?’ That
is, should you use a website or a client Here are some fundamental arguments
application to deliver your services to the that are worth bearing in mind before you
end user? stick your thumb out into the Runtime
Space and hitch a lift.

How technically sophisticated are A web application can use a login page,
your users? but asking users to type in details using a
Your target audience might not be as numeric keypad is undesirable and adds
tech-savvy and fearless as you are. For to the time taken to access your service.
some users, the process of downloading, A client application, however, can store
installing and configuring an application local configuration and details and offer
can be a daunting prospect. Resolving this one-click login.
issue is a trade-off between easier first
time access (i.e., through a website) and How important is speed to your use
superior user experience in repeat use (i.e., case?
using a client application). To use a web application, a user must
typically launch a browser, access the
Does your application or service need to menu and select a bookmark (or enter
know who your user is? Does it need to URL). Each of these stages takes time and
maintain user history or store personal then the speed and latency of the network
preferences? determines how long the user has to wait.
Mobile network operators are increasingly A client application, on the other hand,
preventing third parties from receiving launches quickly and is usually accessible
any identifying information about the user from a menu or idle-screen shortcut. Once
in HTTP requests. Handset numbers are running, applications also perform much
blocked and IP addresses are removed more quickly than websites on comparable
from the network operator’s proxy server. tasks.

4
The Hitch Hiker’s Guide to the Runtime Space

Do you use third-party content in and development effort. We also provide


your service? an objective analysis of the pros and cons
It is more challenging to include third-party of each, and try to dispel some common
elements (for example, ads from an ad myths.
The Hitch Hiker’s Guide to the Runtime Space
serving aggregator) in an application than
in a website. The Guide is not meant to be an
exhaustive technical analysis – though
Do you regularly change the look-and- we have included links to examples
feel of your service? and further resources for each runtime
As soon as you change the files on your environment – but it will give you a good
web server, every user of your website indication of what you should investigate
sees the changes. in more detail.

In contrast, updates to an application So, hold on tight and have a stunning ride!
must first be delivered to the handset, and
then the user must accept the installation.
Ultimately, you cannot guarantee that all
your application users will be using the
most recent version.

Do you need your users to be able to


access your application’s services
offline?
If you do, you need to use a client
application.

Now you’re wondering, ‘Where should


I start?’
Getting started building mobile
applications is no easy task.

The first thing to do is to decide which of


the many runtime environments is the best
fit for your product. This Guide is intended
to help you make an informed decision,
even if you are completely new to mobile
development. We look at some of the most
common environments available on mobile
devices and provide an overview on key
metrics such as market share, functionality

5
Symbian C++

Overview Key features


Symbian C++ is the native programming • Designed for devices with limited
language of the Symbian platform, which is memory and processing power,
specifically designed for mobile devices and the need to remain on for weeks or
with low power consumption and a small months without being rebooted
memory footprint.
• Compared with many of the runtimes
Third parties can create applications and available for Symbian devices, native
middleware in Symbian C++ that take Symbian C++ APIs provide developers
advantage of the underlying power of the with the most comprehensive access
device. However, it is a specialized subset to device features, thereby enabling rich
of C++ with Symbian-specific idioms, and application development
this results in higher associated learning
costs. • Uses a trust-based platform security
model to make the phone more
trustworthy for the user

• Supported UI platforms offer an

Pros Cons
• Provides fine-grain control over all • Requires climbing a steeper learning
aspects of the operating system, curve than other options due to the
including memory, performance and fundamental differences from
battery life Standard C++

• Delivers a consistent performance • There are limited numbers of developers


advantage over other runtimes on with the required skill set. It can be
Symbian difficult and expensive to find proficient
Symbian C++ programmers in the
• Gives access to any features of the current market
Symbian platform that are available
through a public API. This means that
third-party applications can offer the
equivalent behavior of embedded
applications

• There is a wealth of documentation and


training material available to help
developers master Symbian C++

6
The Hitch Hiker’s Guide to the Runtime Space

Pros
• Symbian Signed provides a one-stop
shop for validating applications with
access to the most powerful operating
The Hitch Hiker’s Guide to the Runtime Space
system functions

Effort estimate Examples


(1 – 5, where 1 is the easiest) Google Maps
A native Symbian C++ application
slashphone.com/16/8589.html (review)
1 2 3 4 5 google.com/mobile/default/maps/
index.html

Market share indicator Reference


(October 2008) Symbian C++ Quick Start
226 million Symbian devices shipped developer.symbian.org/wiki/index.php/
across approximately 250 different phone Creating_C%2B%2B_Applications_Quick_
models since the formation of Symbian in
1998 Quick Recipes on Symbian
developer.symbian.org/wiki/
index.php/Symbian_Press_
Books#QuickRecipesonSymbianOS

7
Qt on Symbian
Overview Key features
Qt (pronounced “Cute”) is a powerful cross- • Enables the rapid development of
platform application and UI framework. rich user interfaces
It allows you to write graphically rich
applications for Symbian mobile devices • Intuitive APIs, with idioms that make
that can be deployed across other desktop, C++ programming easier for developers
mobile and embedded operating systems
with little or no platform-specific source • Designed for cross platform
code. development; write once, compile for
any target
Qt development is based on standard C++.
Qt adds its own frameworks, programming • Compatible with Standard C++ making it
idioms and additional tools in order to easier to port code from Linux
improve application portability, and to make
life easier for C++ developers (e.g. in areas • New APIs provide cross-platform access
like memory management and inter-object to key mobile use cases
communication). The Qt APIs are well
designed, and provide a fairly high level of
abstraction; this makes GUI development
easier and faster than with other C++
options on the Symbian platform.

Qt binaries can be separately installed


onto Symbian mobile devices from S60
3rd Edition, FP1 through to Symbian^2. In
Symbian^3, Qt binaries will be pre-installed
on mobile devices, co-existing with the
current Symbian C++ GUI Framework.
From Symbian^4 the intention is that Qt
will be the only UI framework on Symbian
devices.

8
The Hitch Hiker’s Guide to the Runtime Space

Pros Cons
• Portability across desktop and • Applications need to bundle Qt binaries
embedded operating systems for all current phones

• Rich GUI widget set and intuitive C++ • Not all Qt libraries have been ported yet
class library
• Qt may not run as effectively on devices
The Hitch Hiker’s Guide to the Runtime Space
• Powerful frameworks for graphics and
hybrid web applications
with older hardware

• Cross platform goal not yet fully realised


• Powerful and intuitive tools, including on mobile devices:
IDE and tools for internationalization - Currently missing cross platform
APIs for core mobile use cases (e.g.
• Large and active developer community camera)
Code is open source - Desktop user interface layouts may
need to be recreated for smaller
• Supported by other mobile platforms mobile screens
such as Windows Mobile and maemo

• Can integrate with Symbian C++ and


Open C/C++ code to leverage full power
of the platform

Effort estimate Examples


(1 – 5, where 1 is the easiest) At time of writing most Symbian platform
Qt applications have been written for
demonstration purposes. Qt applications
1 2 3 4 5 running on the desktop, including Google
Earth, are listed here:
http://qt.nokia.com/qt-in-use/qt-in-use/
Market share indicator target/desktop
Qt is used by thousands of developers
worldwide, working on Linux, Windows, Reference
Mac OS X and embedded platforms. developer.symbian.org/wiki/index.php/
Qt can run on S60 3rd Edition, FP1 Qt_for_the_Symbian_Platform_(Product_
based phones and later, a market which Overview)
comprises in the region of a hundred
million units. developer.symbian.org/wiki/index.php/
Qt_Technical_Overview

developer.symbian.org/wiki/index.php/
Qt_Quick_Start

qt.nokia.com/doc/4.6/index.html

developer.symbian.org/wiki/index.php/
Category:Qt 9
Open C and Open
C++
Overview Key features
The Symbian platform supplies a set of • Usually used to write or port existing
standard libraries that enable developers standards-compliant middleware (e.g.,
to build POSIX-compliant C code and servers, daemons, etc.)
near-ISO standard C++, including use of the
Standard Template Library. These libraries • As standards-compliant as the
can substantially reduce the time and effort underlying operating system allows it to
required to port POSIX-based software to be, however it is not compliant in all
the Symbian platform. They are especially areas (e.g., it is missing fork())
useful for porting existing C++ or C-based
software from the desktop environment, for • Does not provide a mechanism to
example, from Linux. interact with the various phone
peripherals (e.g., camera, microphone,
The C language support comprises four etc.). Applications must call Qt APIs from
base libraries (libc, libm, libpthread and the Mobility Project or use native APIs
libdl) and related tools, overlayed by a for this purpose
number of additional libraries: libssl, libz,
libcrypto, libcrypt and libglib. • Not suitable for writing a user interface
(UI). Alternatives for creating the UI
For standard C++ support the platform include:
provides the popular STLport version of the
Standard Template Library and also a small > Qt, the cross-platform application
but useful subset of the Boost libraries. and UI framework. Qt is compatible with
standard C++, and provides high level
The libraries do not include APIs for user APIs for rapidly creating elegant user
interface development, for access to device interfaces.
peripherals (camera, microphone, etc.) or > The Symbian platform GUI framework
for access to Symbian application engines > Python for S60, a scripting language
like the calendar and contacts; Qt is mainly targeted at prototyping. This is
expected to provide this functionality when suitable for applications with minimal UI
needed. requirements
Applications, Games or Middleware (C/C++)

RGA

Boost Open C/C++

IOStreams
Standard C++
STL

libc libm libz libdl libpthread


Open C
libcrypt libcrypto libssl libglib

Symbian OS and S60 Platform

10
The Hitch Hiker’s Guide to the Runtime Space

Pros Cons
• Provides a familiar programming • C++ has a steep learning curve for those
interface unfamiliar with it

The Hitch Hiker’s Guide to


• Creates opportunities for cross-
the Runtime Space
• Does not provide access to most
platform software development and is handset-specific features such as
demonstrably useful in porting C/C++ multimedia or telephony
code
• Does not provide Standard C/C++ APIs
• Existing standards-compliant code will for the UI or application engines,
work on the Symbian platform with such as calendar, contacts and
some minor changes and a rebuild messaging applications

• Developers can benefit from a large


open-source codebase instead of having
to create everything from scratch. This
offers both time-to-market and quality
advantages

• Reasonably large pool of skilled


programmers available

Effort estimate Reference


Symbian C/C++ Documentation
developer.symbian.org/wiki/index.php/
1 2 3 4 5 Category:C/C%2B%2B

Symbian Guide To P.I.P.S. (core libraries)


Market share indicator developer.symbian.org/wiki/index.php/A_
POSIX is one of the oldest and most Guide_To_P.I.P.S.
widely used standards in programming. It
is one of the best ways of using the large www.forum.nokia.com/Technology_Topics/
open source codebase. Development_Platforms/Open_C_and_
C++/
Examples
QUAKE
A port of the classic first-person shooter
game. The application engine is ported
using Open C.
koti.mbnet.fi/hinkka/index.html

11
Python

Overview Key features


The Python language is an easy to use • The Python language is very easy to
but powerful scripting language. Many learn and it is easy to develop
common tasks can be achieved in just a applications with it. A lot can be achieved
few lines of code by using its extremely with little code and testing applications in
comprehensive standard library. It is ideal the form of scripts dramatically reduces
for rapid prototyping and development of the time and effort required by a project
mobile applications.
• Rapid prototyping - the best option
The Symbian platform enables Python for rapid prototyping when creating
through the “PyS60” runtime, which adds applications for the Symbian platform
mobile specific APIs to “standard” Python.
• Extensibility - extensions can be written
in Symbian C++ to enhance Python’s
functionality on the Symbian platform

Pros Cons
• Very easy to learn and use, and ideal for • Python not supported on other mobile
testing application models before device platforms
implementing them using the native
language • Less functionality than native Symbian
C++
• Access to the filesystem, messaging,
contacts database, local connectivity, • Python runtime must be manually
camera, gallery, sensor framework, GPS, installed on devices using Python
etc. enables development of applications applications
that leverage the platform’s strengths
• Python’s performance is reasonable
• Scripts can be tested interactively on the but still slower than Symbian C++.
emulator without building It is not suitable for high performance
applications e.g. video streaming
• The same Python script can run on both
emulator and device (as compared to
Symbian C++ where a different binary
format is required)

12
The Hitch Hiker’s Guide to the Runtime Space

Pros
• Can be extended through native
extension modules for additional
functionality
The• Available
HitchonHiker’s Guide to the Runtime Space
Symbian^1 devices and
earlier devices

• PyS60 is an open source project, which


means developers can modify and
build their own, enhanced versions of the
runtime

• Toolchain is free

Location Scheduler
Effort estimate Trigger alarms or reminders according to
(1 – 5, where 1 is the easiest) location
wiki.forum.nokia.com/index.php/How_to_
1 2 3 4 5 develop_a_Geo-scheduler_application_-_
Part_1

Market share indicator Reference


(October 2008) Symbian Python Documentation
Widely available on devices from S60 2nd developer.symbian.org/wiki/index.php/
Edition through to Symbian^1, as an after- Category:Python
market installation.
Python Quick Start
Examples developer.symbian.org/wiki/index.php/
PyCalc Python_Quick_Start
A utility that demonstrates how to link
several scripts and make use of other Python.org: Language Reference
resources, such as images wiki.forum.nokia.com/index.php/
croozeus.com/blogs/?p=28 Category:Python

ShakerRacer Symbian Press Books: Mobile Python


Allows you to control a toy racing car with developer.symbian.org/wiki/index.php/
your phone through Bluetooth Symbian_Press_Books#MobilePython
symbianresources.com/projects/
shakerracer.php

13
WRT (Web Runtime) T

Widgets
Overview Key features
Web Runtime (WRT) is a web application • Enables relatively simple programs, often
development environment from Nokia which interacting with server-side web services
enables widgets to run, operate and behave (e.g., information retrieval and search
like native applications. jump-off) or self-contained games

Widgets are lightweight web applications • Widgets’ operations are mainly


T
that can run independently from the implemented using JavaScript. The use
browser application. Widgets use standard of standard web technologies means an
web technologies such as HTML, CSS, almost flat learning curve for existing
JavaScript and AJAX. Widgets are quick to web designers
develop and easy to distribute and install.
• Web Runtime (WRT) provides
extension APIs for widgets to access
certain system properties and mobile
environments

• This is a relatively new environment and


is still rapidly growing. Forthcoming
versions of WRT will be adding APIs to
enable access to information and
services provided by the device, for
example, GPS, contacts, calendar,
messaging, audio and video
information and services

Pros Cons
• Widgets appear to the user as normal • Not all common JavaScript functions and
applications HTML properties are supported in the
current Nokia WRT platform
• There’s an almost flat learning curve for
the web design/development community, • The current version of WRT has
which reduces the cost and time-to- extremely limited access to phone
market associated with developing hardware and features: basic power,
mobile applications memory, language, network information,
control of keypad lights and phone
• Migration between standards- vibration
based widget platforms is relatively
straightforward • Performance can be an issue for more
complex applications
• No signing is required (unlike a native
application)
14
The Hitch Hiker’s Guide to the Runtime Space
The Hitch Hiker’s Guide to the Runtime Space

Effort estimate Reference


(1 – 5, where 1 is the easiest) Web technologies on
developer.symbian.org
1 2 3 4 5 developer.symbian.org/wiki/index.php/
The Hitch Hiker’s Guide to the Runtime Space Category:Web_technologies
The Hitchshare
Market Hiker’s Guide to theForum
indicator Runtime Space
Nokia: Web Runtime homepage
Widely available. www.forum.nokia.com/Technology_Topics/
Web_Technologies/Web_Runtime
Examples
The symbian.org Widget
developer.symbian.org/wiki/index.php/
Symbian.org_WRT_Widget

Symbian Widget Tutorial


Step by step guide to create a WRT widget.
developer.symbian.org/wiki/index.php/
WRT_Widgets_Tutorial

15
Web Browser

Overview Key features


Web browsers on mid- to high-end • Many websites designed for PC will
mobile handsets have matured into an be accessible and usable on high-end
environment that offers the functionality of mobile web browsers without alteration
PC-based browsers. There are a variety
of browsers in the marketplace including • Unlike an application, the content and the
Nokia Web Browser for S60 (based on ‘look and feel’ of a website can be
WebKit), Microsoft Internet Explorer updated for all users instantaneously.
Mobile and Opera Web Browser/Opera This allows incremental feature launches
Mini. They all share some core code with and faster development cycles
PC-based browsers (Safari, IE and Opera
respectively). • True web layout – some browsers
display web content as it would look on a
This commonality means that for many desktop screen, without resizing or
applications, your PC-based web content repurposing for the handset display
can be easily repurposed for mobile using
familiar web technologies. However, • Browsers offer various levels of
your must remember that there are many standards support, including HTML,
differences between PC and mobile use- XHTML, CSS, JavaScript, AJAX, Flash
cases as well as many platform limitations Lite and SVGT 1.1 content embedded
– screen size being the most obvious. in web pages, as well as RSS
Testing on a variety of mobile devices and subscription functionality. Check the
networks is as important as testing on documentation for the different browsers
different PC browsers. for further information

Browser-based mobile content often makes


sense as a low-cost option for a first move
into the mobile space. Skills are readily
available and build times are relatively
low. The flip side is that functionality
is extremely limited and, compared to
application-based approaches, the user
experience can be poor. For example, it
may take a significant amount of time for
the browser itself to launch and load your
content, and typing a URL on a numeric
keypad is not always easy.

16
The Hitch Hiker’s Guide to the Runtime Space

Pros Cons
• Some browsers deliver a full, highly • The content or application is unavailable
standards-compliant, desktop-like web when there is no Internet connection
experience
The Hitch Hiker’s Guide to the
• Web content runs in a limited sandbox.
Runtime Space
• Latency, data transfer speeds and
network data charges are significant
It does not need to go through the same considerations in mobile Internet
security checking as installed browsing. Content should be optimized
applications, so the deployment cycle is accordingly
quicker
• Some devices have limited memory
• Support for web standards means that available and exceeding the limit may
development skills are readily available result in incomplete page display or
in the community other problems

• Allows content to be updated • A badly designed web page may display


immediately for all users poorly or may not even display at all

• A single, well-designed web page can • Some browsers (e.g., Opera Mini and
be usable on desktop and mobile Skyfire) use a transcoding server at the
devices, with no need to maintain network head-end to pre-format content.
separate versions This means that your content is not
directly communicating with the handset
• The user does not need to perform any itself, which can cause problems
(complicated or intimidating) installation with session identification and AJAX
functionality

Effort estimate Reference


(1 – 5, where 1 is the easiest) Web technologies on developer.
symbian.org
1 2 3 4 5 developer.symbian.org/wiki/index.php/
Category:Web_technologies

Market share indicator Forum Nokia: Web Browser


The vast majority of mobile handsets in www.forum.nokia.com/Technology_Topics/
circulation feature one form of web browser Web_Technologies/Browsing
or another.

Examples
Forum Nokia: Example site
forumnokia.mobi/example_site

17
Java ME
(Java Platform, Micro Edition)

Overview Key features


Java ME provides a robust, flexible • Flexibility – rich Java APIs
environment for applications running on
mobile and other embedded devices. It • Portability – well-written Java ME
includes user interfaces, security, built- applications that use standard APIs can
in network protocols, and support for run in multiple operating environments,
networked and offline applications that can although there are challenges such as
be downloaded dynamically. Applications adapting to different screen sizes
based on Java ME are portable across
many devices, yet can leverage the native • Security – Java ME applications use
capabilities of each device. signing and a tiered security model to
control access to protected APIs.
Security signing is strongly
recommended in order to be
able to promote the application to the
widest possible audience

• Extensibility – the Mobile Service


Architecture (MSA) defines standard API
sets. This enables developers to
determine which extensions are
available on the device

Pros Cons
• The Java programming language is • Fragmented Java ME implementation
familiar to thousands of programmers can prevent Java ME applications
that have been written for a particular
• There is an abundance of good device or platform from functioning
quality, free and open source tools for correctly on other devices and platforms
development, debugging and profiling
• Java provides only limited access to
• Java runs in a secure sandbox so phone functionality and there is no easy
that networks and handsets cannot be mechanism for dynamically extending
compromised access in after-market software. Java
Specification Requests (JSRs) cover
• The portability of Java ME applications many APIs, however there is still a gap
across operating environments provides between J2ME and native functionality
easier and wider access into the mobile
devices application market

18
The Hitch Hiker’s Guide to the Runtime Space

Pros Cons
• Java APIs are designed collaboratively • The requirement to launch the Java VM
between various expert stakeholders in can result in slower application start-
the industry (www.jcp.org) to ensure up times than for applications in other
The Hitch Hiker’s Guide to the Runtime Space
they are fit for purpose environments

• Java ME applications are generally not


suitable for background tasks as many
platforms do not allow Java applications
to run in the background, although Java
ME on Symbian does allow this

• Political considerations in Java signing


can leave Java ME applications unsigned,
which can compromise the security of the
application and affect the user experience
(users will be regularly prompted to
confirm that they ‘trust’ the application)

Effort estimate Reference


(1 – 5, where 1 is the easiest) Sun Developer Network:
Java ME at a glance
1 2 3 4 5 java.sun.com/javame/index.jsp

Sun Developer Network:


Market share indicator Mobility technical articles
(October 2008) developers.sun.com/mobility/allarticles
Screen Digest estimates that over 90% of
mobile devices support the installation of Java Community Process Program:
Java ME games. JSR overview
jcp.org/en/jsr/overview
Examples
Centipede Java ME on Symbian
The classic Atari game by Glu Mobile Inc. developer.symbian.org/wiki/index.php/
glu.com/noram/pages/product. Symbian_Press_Books#JavaOnSymbian
aspx?pr=Centipede

Block Breaker Deluxe


A frenzied game of block breaking action
and fun by Gameloft.
gameloft.com/mobile-games/block-
breaker-deluxe
19
Flash Lite
Overview Key features
Adobe Flash has become the de facto • Access to content and video on the
standard for delivering rich, interactive Internet created using Adobe’s suite of
graphics on the web. Flash Lite is the tools
Flash profile specifically designed for
mobile and consumer electronic devices. • Runtime graphics – Flash Lite supports
It enables mobile application developers sophisticated vector and bitmap graphics
and designers to create engaging content as well as animated shapes at runtime
and applications with customized user
interfaces. • ActionScript 2.0 support – The
ActionScript 2.0 programming language
is very similar to JavaScript

• Support for common video format


across all handsets, with Flash video
(FLV) support from Flash Lite 3

• Extremely compact file size – Ideal for


wireless networks

• Persistent data – Local storage of


application-specific information such as
preferences, high scores and usernames

• Limited integration with certain device


features, such as call logs

Pros Cons
• Flash Lite supports many different • Flash Lite is only a subset of full Flash
content types, including wallpapers,
screensavers, games and applications • Although applications are portable within
a particular group of devices, they must
• Proven technology that has been be tailored for different groups of device
available for a decade on the Internet
• Deep integration with the handset UI is
• Available across multiple high-end and only available on some devices
mid-range devices
• The level of access to device and
• Available on multiple operating systems network functionality is limited

20
The Hitch Hiker’s Guide to the Runtime Space

Pros Cons
• Reasonable portability: write once, • Tools cost money
run everywhere within the same target (See the Reference section)
devices group and supported content
type
The Hitch Hiker’s Guide to the Runtime Space
• Runs in a secure sandbox so that
network and handset cannot be
compromised

• Powerful yet easy-to-use development


tools

• The visual authoring environment


enables both non-technical people (such
as graphic designers) and developers to

Effort estimate Reference


Open Screen Project
www.openscreenproject.org
1 2 3 4 5
Adobe: Flash Lite supported devices
www.adobe.com/mobile/supported_
Market share indicator devices/handsets.html
(October 2008)
Over 300 million Flash-enabled devices in Adobe: Design Central CS4
the marketplace available to consumers as (authoring tool)
of Oct. 2008. Expect 1 billion by 2010. www.adobe.com/products/creativesuite/
devicecentral
Examples
Fickle Blox Adobe: Mobile & Devices Developer
A fast-moving puzzle game by Bluesky Center
North. blueskynorth.com/portfolio/index. www.adobe.com/devnet/
php?project_id=9 devices/?view=gettingstarted

Flash Lite Quick Start


developer.symbian.org/wiki/index.php/
Category:Flash_Lite

21
Demand Paging on
Symbian Demand Paging
on Symbian Demand Pagin
g
What you will
this book
learn from

How Symbian uses
As Symbian-base
feature rich, the d
d devices becom
emand on system
e increasingly 
on Symbian
Our first eBook, available for
 demand paging. increases. Deman  resources 

Jane Sales
How to use and c free RAM, faster std paging will give you more 
onfigure dem
paging on new Sy and  stability when out  art-up times, and better 
mbian devices. of memory.
How to implemen This book provide
t demand paging 
for the first time, c into the workings  s a comprehensive insight 
factors that may a onsidering those  of demand paging 

free download from Symbian’s


Symbian. It gives 
and ROM size. ffect perform
ance  clear instructions o on 
implement an n how to 
d con
How to evaluate t a new platform, ho figure demand paging on 
demand paging o
he impact of  device drivers, andw to write demand-paged 
or a group of com
n a component  demand-paged s  how to test and debug 
ponents. ystems.

developer website.
How to combine k The book demon
strates theoretica
demand paging is eywords so that  while providing pr l concepts 
sensible way  switched on in  paced tutorial that
actical examples. I
s for XIP-ROM ima t is a fast-
and executables. ges  decisions that you  focuses on the critical 
of tips and advice.  need to make, and is full 
How to test and d
demand-paged e ebug in a 
nvironment to  Who this book
resolve issues tha is for
demand paging. t may arise with  This book is prima
who need to creat rily for Symbian engineers 
ROMs, fine tune the demand-paged system 
for them. It w em, and write de
ill also vice drivers 
or middleware dev  be of interest to applica
tion 
the impact of dem elopers wanting to understand
and paging on the  
ir code.

ISBN 978-1-9072
53-00 -3  

In this book, you will learn: system resources increases. Demand


paging will gives more free RAM, faster
• How Symbian uses demand paging start-up times, and better stability when
out of memory.
• How to use and configure demand
paging on new Symbian devices Jane’s book demonstrates theoretical
concepts while providing practical
• How to implement demand paging examples. It is a fastpaced tutorial that
for the first time, considering factors focuses on the critical decisions that
that may affect performance and you need to make, and is full of tips and
ROM size advice.

• How to evaluate the impact of The book is primarily for Symbian


demand paging on a component engineers who need to create demand-
or a group of components paged system ROMs, fine tune them, and
write device drivers for them. It will also
• How to combine keywords so that be of interest to application or middleware
demand paging is switched on in developers wanting to understand the
sensible ways for XIP-ROM images impact of demand paging on their code.
and executables
You can download the pdf book from
• How to test and debug in a developer.symbian.org/wiki/index.php/
demand-paged environment to Demand_Paging_on_Symbian
resolve issues that may arise with
demand paging Print copies are also available from
Amazon.co.uk (there’s a link on the wiki
As Symbian-based devices become page to find it).
increasingly feature rich, the demand on

22
Porting to the Symbian
Platform
Porting to th
e
Symbian Platf
Open Mobile De
o rm
The first book for a new in C/C++ velopment

generation of Symbian Mark Wilcox

developers, published by
the Symbian Foundation in
September 2009.

If you want to write mobile applications In this book, you will learn:
without the idioms of Symbian C++,
have existing software assets that you’d • How to port and make use of existing
like to re-use on Symbian devices, or are open source code to speed up your
an open source developer still waiting development projects
for an open Linux-based device to gain
significant market penetration, this is • How to port applications from other
the book for you! mobile platforms to the Symbian
platform
Beginning with an introduction to the
native programming environments • How to write code that is portable
available, you learn how to go about across multiple platforms
porting your code to the Symbian platform.
• The APIs in the Symbian platform for
Next, we discuss how to port to Symbian cross-platform development, such as
from some other common platforms, support for standard C/C++ and Qt
including Linux and Windows.
Creating native mobile applications and
Finally, we examine sample porting middleware has never been easier. So
projects as well as advanced information what are you waiting for?
on topics such as platform security.
Find out more about this upcoming book
The author team consists of no less at eu.wiley.com/WileyCDA/WileyTitle/
than six Forum Nokia Champions, productCd-0470744197.html
together with technical experts from
the Symbian community, either working
on Symbian platform packages or third
party application development. With this
book, you will benefit from their combined
knowledge and experience.

23
For further information about the Symbian platform, please visit developer.symbian.org.
Comments and suggestions about this booklet can be sent to docs@symbian.org, or
left on the discussion forums at developer.symbian.org/forum. Please enjoy this booklet
responsibly, and recycle it after reading, where facilities exist.

You might also like