Lecture 1 - Introduction Mobile Programming
Lecture 1 - Introduction Mobile Programming
Pla*orm Overview
Mobile
Pla*orms
• Nokia
– Symbian
Pla*orm
– MeeGo
• Google
– Android
• Apple
– iOS
4
• Others
(Windows
Phone
7,
BlackBerry,
HP
webOS)
• Cross-‐pla*orm:
Java
ME
SYMBIAN
PLATFORM
Symbian
OS
(History)
• Most
popular
smartphone
mobile
operaTng
system
in
the
world
• Based
on
EPOC
OS
for
Psion
PDAs
in
the
90's.
• First
Nokia
devices:
9210
Communicator
and
7650
Symbian
Pla*orm
• Open
source
OS
designed
for
smartphones
by
Symbian
FoundaTon
• Successor
to
Symbian
OS
• Versions:
– Symbian^1
(=
S60
5th
EdiTon)
• Nokia
5800,
n97,
Samsung
i8910,
Sony
Ericsson
SaTo...
– Symbian^3
Since
21th
of
October,
Nokia
is
not
referring
to
Symbian^3
• Nokia
N8,
C6-‐01,
C7-‐00,
E7-‐00
or
Symbian^4.
MeeGo API"
Comms Internet Visual Media Data Mgmt! Device Personal
Services! Services! Services! Services! Services! Services!
Connection Mgmt Layout Engine 3D Graphics Media FW Content Framework Device Health PIM Services
ConnMan WebKit OpenGL / ES GStreamer Tracker
Telephony Web Run-Time 2D Graphics Camera Context Framework Sensor Framework Device Sync
oFono WebKit Cairo, QPainter GStreamer plug-in ContextKit
VOIP, IM, Pres Web Services I18n Rendering Codecs Package Manager Resource Manager Accts & SSO
Telepathy Lib SocialWeb Pango, QText GStreamer plug-in PackageKit
X UPnP
GUPnP
Rectangle {
id: canvas
width: 200
height: 200
color: "blue"
Image {
id: logo
source: "pics/logo.png"
anchors.centerIn: parent
x: canvas.height / 5
}
}
Demo
Future
of
UI
-‐
design?
• 1)
MeeGo
Touch
– Specific
UI
style
primarily
for
touch
screen
devices
– Built
on
top
of
Qt
(C++)
• 2)
Qt
Quick
Components
– Premade
UI
–
components
– Focus
on
MeeGo
Look
and
Feel
– Built
on
top
of
Qt
Quick
Nokia's
Ovi
• Market
place
for
– Java
ME,
Flash,
Qt
-‐
apps.
• Millions
of
potenTal
users
• Publishing
– Individual
the
cost
is
1
euro
– For
Symbian
apps,
ovi
signing
is
required
– 30%
of
revenue
to
Nokia
ANDROID
Google
Android
• Android
is
a
Linux-‐based
open
pla*orm
• Developed
by
Open
Handset
Alliance,
which
is
lead
by
Google.
– HTC,
Intel,
Motorola,
Qualcomm,
T-‐Mobile
and
NVIDIA
• Google
Nexus
One
introduced
on
Jan
5.
2010
• Several
phones
and
manufactures
• Gartner
predicTon:
in
2012
Android
is
the
second
popular
Mobile
OS!
• Versions
1.5,
1.6,
2.1
and
2.2
Android
Development
• Programming
Language:
Java
• Google's
SDK
available
for
Win,
Linux
and
Mac
• Google's
own
virtual
machine:
Dalvik
• Android
Java-‐apps
are
not
the
same
than
standard
Java
–
apps.
• Oracle
sues
Google
for
the
usage
of
Java
–
technology
(august
2010)
Demo
Android
Market
• Register
with
Google
Account
• RegistraTon
fee
$25
• Free
Apps:
no
fee,
otherwise
30%
• Available
in
Finland
– users
can
purchase
apps
and
developers
can
sell
apps
• Apps
can
be
distributed
also
via
non-‐market
IOS
Apple's
iPhone
• Prior
to
iPhone
(2007/2008)
– No
touch
screens
– No
mulTtouch
– No
markets
– NaTve
app
development
was
very
hard
(symbian
C++)
• iPhone
was
a
revoluTon
in
mobile
pla*orms
iOS
4
• Mobile
pla*orm
developed
by
Apple
for
iPhone,
iPod
Touch
and
iPad
• Based
on
Mac
OS
X
• Development
kit
only
available
for
Mac
OS
X
• Programming
Language:
ObjecTve-‐C
• App
distribuTon
only
via
Apple’s
App
Store
Demo
App
Store
• Central
Pla*orm
for
iOS
4
apps
• By
far
the
most
successful
market
place
for
mobile
applicaTons
• 99$
fee
for
the
developer
program
• Free
Apps:
no
fee,
otherwise
30%
• Apple
Approval
FUTURE?
Thoughts
on
future:
BaTle
for
Developers
• Nokia
• Android
+
Qt
looks
very
promising
+
Lot
of
support
from
non-‐
+
Hardware
excellent
Nokia
manufactures
+
Market
leader:
zillions
shipped
devices
+
Good
programming
+
Open
environment
-‐ Qt
under
heavy
development
+
Open
-‐ FragmentaTon?
+
Ecosystem
-‐ MeeGo's
future?
-‐
FragmentaTon
-‐ Ovi
Store
and
Ecosystem
-‐ Success
in
USA?
Thoughts
on
future:
BaTle
for
Developers
• Apple
+
Ecosystem
+
One
OS,
couple
devices,
no
fragmentaTon
+
App
Store,
millions
of
applicaTons
+
Mature
programming
environment
-‐ Apple's
control
for
everything
-‐ Close
OS
and
rules