Upload
nguyen-duan
View
218
Download
2
Embed Size (px)
Citation preview
2/10/2014
1
Introduction to Mobile Application Development
Slide 2
Mobile ?
3. The world is nota desktop
2. An important part of our life
1. Mobile phones
are everywhere
2/10/2014
2
Slide 3
Mobile phones are everywhere
Slide 4
Airport
2/10/2014
3
Slide 5
Rural area
Slide 6
2/10/2014
4
Slide 7
Phones become an important part of our life
Connecting People Entertainment Device
Slide 8
The world is not a desktop
2011, World populations 7 billion people, 5.6 billion mobile phones
2011, USA, 327.5/310, 103.9%
2009, GER, 107/82, 130%
2008, UK, 75.7/61.6, 123%
2010, VIETNAM, 72/90, 79% Source: http://en.wikipedia.org/wiki/List_of_countries_by_number_of_mobile_phones_in_use
2/10/2014
5
Slide 9
Are there enough software for eveyone ?
Slide 10
�The world is going mobile
�Many challenges
�You can find more reasons
Why we learn???
2/10/2014
6
Slide 11
What is course talking about ?
Slide 12
The mobile phone of the 21 centuty
2/10/2014
7
Slide 13
The mobile phone of the 21 centuty
SmartMobile
It has
System
It has Operating
System
It is an It is an entertainment
device
It has Sensors
Network connections
It is powerful
Slide 14
The phone is powerful
Plenty of RAM Heaps of external storage
Multi-core CPU
2/10/2014
8
Slide 15
Khái niệm CPU Core
CPU: Central Processing Unit
Computational power of a computer is
usually measured by the power of its CPU
Slide 16
Quad-core
Quad cores = 4 cores
Means: 4 “CPU” in a box
More powerful, stronger
More engergy consumption More difficult to manage
2/10/2014
9
Slide 17
It has operating system
Slide 18
Connectivities – Wide range
3G
2/10/2014
10
Slide 19
Connectivities – Short range
Slide 20
It has sensors
AccelerometerTouch Screen GPS receiver
2/10/2014
11
Slide 21
Assisted GPS (A-GPS) (on smartphones)
Slide 22
�Location based Services
Map related applications
∗ Navigation Based Services
∗ Routing Services
2/10/2014
12
Slide 23
It is an Entertainment Device
Slide 24
The smartphones problems
Difficult to interact
Battery life
Expensive
Social issuesDistraction
2/10/2014
13
Slide 25
Difficult Interaction
Small Screen Icon based ?
Too complicated
Menu based ?
Slide 26
Short battery life
Battery Awareness
How much energy that your app uses ?
2/10/2014
14
Slide 27
They are expensive
Slide 28
Social issues
Distractions
Mobile phones have changed our way of
communication
Isolationism
2/10/2014
15
Slide 29
Though, there are many difficulties: We still love them !
Slide 30
How to develop an innovative program on Mobile phone ?
context awareness
User experience
Social Networks
innovative
2/10/2014
16
Slide 31
Context-awareness
http://www.mlab.t.u-tokyo.ac.jp/research/2005/context-aware_computing/index_e.php
Slide 32
�GUI
�Menu & Navigation
�Intuitive
User experience
2/10/2014
17
Slide 33
�We live in a community, not in
an island
�Wireless connections are
everywhere
�Knowing & Sharing & Caring
Connectivity & Social networks
Mobile Application Development
A Little Background
2/10/2014
18
Slide 35
History of Mobile Phones
Slide 36
And Then… Smart Phones!!!
2/10/2014
19
Slide 37
And Then… Smart Phones!!!
Slide 38
IPhone
2/10/2014
20
Slide 39
Sales Dropped…
Slide 40
A New Player Arrives… Google!!
2/10/2014
21
Slide 41
Open Handset Alliance (OHA)
Mobile Application Development
The Future
2/10/2014
22
Slide 43
Future of Android
Slide 44
Future of Android
2/10/2014
23
Slide 45
Future of Android
Slide 46
Android Box
�Android 4.0 OS
�Built-in Skype Camera
�1GB DDR3, 4GB Nand Flash
�Support 3G Dongle
�Support flash 11, Support HTML5
�Support Android APPs from Google Play or others
�Support 2.4G wireless keyboard & mouse
�Support sorts of USB 3G dongle, make access to
internet more conveniently
2/10/2014
24
Slide 47
Applications of Android Box
�Information Display Systems
�Real-Time Process Monitoring
�Media Processing Systems
�Queue Management Systems
�Imagination is the only limit
Slide 48
Information Display Systems
2/10/2014
25
Slide 49
Real-Time Process Monitoring
Slide 50
Queue Management Systems
2/10/2014
26
Android
Common Misconceptions
Slide 52
What It Isn’t
�A Java ME implementation
�Part of the Linux Phone Standards Forum (LiPS)
�Simply an application layer (like UIQ or S60)
�A mobile phone handset
�Google’s answer to the iPhone
2/10/2014
27
Slide 53
An Open Platform for Mobile Development
The first truly open and comprehensive platform for mobile
devices, all of the software to run a mobile phone but
without the proprietary obstacles that have hindered mobile
innovation.
Slide 54
Android Software Stack
2/10/2014
28
Slide 55
An Open Platform for Mobile Development
�A hardware reference design that describes the capabilities required of a mobile device in order to support the software stack
�A Linux operating system kernel that provides the low-level interface with the hardware, memory management, and process control, all optimized for mobile devices
�Open source libraries for application development including SQLite, WebKit, OpenGL, and a media manager
Slide 56
An Open Platform for Mobile Development
�A run time used to execute and host Android applications, including the Dalvik virtual machine and the core libraries that provide Android specific functionality. The run time is designed to be small and efficient for use on mobile devices.
�An application framework that agnostically exposes system services to the application layer, including the window manager, content providers, location manager, telephony, and peer-to-peer services
2/10/2014
29
Slide 57
An Open Platform for Mobile Development
�A user interface framework used to host and launch
applications
�Preinstalled applications shipped as part of the stack
�A software development kit used to create applications,
including the tools, plug-ins, and documentation
Slide 58
Native Android Applications
�An e-mail client
�An SMS management application
�A full PIM (personal information management) suite
�Mobile Google Maps application
�Web Browser
�An Instant Messaging Client
�A music player and picture viewer
�The Android Marketplace client
�The Amazon MP3 store client
2/10/2014
30
Slide 59
Android SDK Features
�Access to Hardware including Camera, GPS, and Accelerometer
�Native Google Maps, Geo coding, and Location-Based Services
�Background Services
�SQLite Database for Data Storage and Retrieval
Slide 60
Android SDK Features
�Shared Data and Inter - application Communication
�P2P Services with Google Talk
�Extensive Media Support and 2D/3D Graphics
�Optimized Memory and Process Management
2/10/2014
31
Slide 61
Why Develop for Android?
�Simple and powerful SDK
�No licensing fees
�Excellent documentation
�A thriving developer community
�Backed by more than 30 OHA members
Slide 62
What Makes Android Unique
�Google Maps Application
�Background Services and Applications
�Shared Data and Inter-process Communication
�All Applications Are Created Equal
�P2P Inter device Application Messaging
2/10/2014
32
Slide 63
What Comes in the Box
� The Android APIs
� Development Tools
� The Android Emulator
� Full Documentation
� Sample Code
� Online Support
Slide 64
Android Application Architecture
�Activity Manager: Controls the life cycle of your activities,
including management of the activity stack
�Views: Are used to construct the user interfaces for your
activities.
�Notification Manager: Provides a consistent and non
intrusive mechanism for signaling users
�Content Providers: Lets your applications share data
between applications
�Resource Manager: Supports non-code resources like
strings and graphics to be externalized .
2/10/2014
33
Slide 65
What We Need to Begin Development
�Android SDK
� http://code.google.com/android/download.html
�Java Development Kit 5 or 6
� http://java.sun.com/javase/downloads/index.jsp
�Eclipse
� www.eclipse.org/downloads/