30
Introduction to Mobile Applications

Introduction to Mobile Applications. Wireless Applications Personal Time and KnowledgeManagemnt Personal Health & Security PersonalNavigation Remote Monitoring

Embed Size (px)

Citation preview

Introduction to Mobile Applications

Wireless Applications

PersonalPersonalTime and Time and KnowledgeKnowledgeManagemntManagemnt

Personal Personal Health &Health &SecuritySecurity

Personal Personal NavigationNavigation

Remote Remote Monitoring &Monitoring &ControlControl

Citizen Citizen ServicesServices

EntertainmentEntertainmentEdutainmentEdutainmentLearningLearning

E-commerceE-commerce

Social Social NetworksNetworks

WorkWork

Thin-client vs. smart-client

sms, mmshtml

J2ME, C++C#, Objective-C,flashlite,

applications

applications

Messaging and Browsing

• Short Messaging

• Multimedia Messaging

• HTML, CSS, javascripting

Evolution of Messaging

Browsing

InternetWeb Browser

Web Server

User requests Document

Web server returns document data to web browser

Database Servers

web server looks for document

web server retrieves document

microBrowser

Mobile Browsers

Mobile Web Access

http://www.netmarketshare.com/report.aspx?qprid=61&sample=37#

Mobile markets and development environments

How many of us own…

• a car 800M

• Fixed Telephone 1.3B

• TV 1.5B

• Credit card 1.3B

• Mobile phone ?

• PC ?

How many of us own…

• a car 800M

• Fixed Telephone 1.3B

• TV 1.5B

• Credit card 1.3B

• Mobile phone 4.6B

• PC 1.1B

Replacement cycle

• PC: 3 years+

• Mobile phone 18 months (Japan, Korea 6 months)

Where are the successful mobile applications?

• Voice call

• Short message

• Ringing tone down load

• Some isolated vertical applications

Mobile applications are still very young.

• 1994 Sms • 1995 Sms value added services• 1997 Ringing tone down load• 2000 First Symbian phone • 2001 First browser phone• 2002 First java ME phone• 2003 Multimedia Message Service• 2006 Mobile TV• 2007 Near Field Communication

Overall User Experience Makes the Difference

• Genuine Need• Limited device capabilities are acceptable• Penetration• Pricing = cost vs. benefit (for all parties

involved)• Awareness • Distribution

Characteristics of Mobile Devices

• Limited Display

Keyboard

Power supply

• QoS (off-line capability)

• Location awareness

• Access to data (address books etc) and phones capabilities (camera, communication etc.)

Mobile Application Development

• Mobile Applications– Classifying mobile applications– Successful mobile application?– Mobile device characteristics

• Application development environments

Development Environments

• Native like Symbian/S60

• Platform independent like Java ME

Thin-client vs. smart-client

sms, mmshtml

J2ME, C++C#, objective-C, flashlite

applications

applications

Smartphones

• ”Open” OS vs. Proprietary OS– Phone manufacturer

own OS– Symbian– Windows Mobile– Linux

• Development Environment– Java– .NET– C++– Objective-C, Cocoa

Touch

Today – a wide range of phones

http://www.symbian.com/phones/index.html

Development Tools

• VB / C# (.NET)– Windows Mobile

• C++– Symbian

• Java– Symbian– Linux

• Objective-C– iOS

Java 2 Family

J2ME

develop java applicationsfor MIDP devices

Web/App Server

Transfer usingcable or wireless connections

Download from the server

Mobile developer’s nightmare

Distribution Reach Device Penetration

Ease

Of

Dev

Touch UI

Access to device capabilities

S60/C++ Not in US

Iphone/ObjC

Windows

Android

Java ME fragmented ?

Browser

Widgets

Flash lite

How to Choose the environment ?

• Geographical reach required?

• Multidevice support?

• Thick client needed?

• Which phone capabilities will be used?

• What environments is the project team familiar with ?

• Type of UI? Pen/no pen, Graphics intensitivity?

Smart Phone Market Shares 2010

+45.9%

Windows Phone vendors

• Samsung• HTC• Ericsson• Motorola• Palm• I mate• HP• Dell• Toshiba• …

62 Windows mobile devices on the UK market (3/2009)

Three Ways for Mobile Windows

• Native code (C++, .DLL)– for high performance– direct hardware access– the smallest footprint.

• Managed code (C#, VB)– user interface-centric applications– fast time-to-market– rapid application development– easy access to Web services

• Server-side code – For wide range of devices