SlideShare a Scribd company logo
Android
Application Development
A Tutorial Driven Course
Java
• Basic Java programming
– Exceptions
– Inner Class, Interface
• Advanced topics we will touch:
– Java IO
– Java Thread
– Java Socket
Android Basics
Credit goes to Google!
Course Objectives
• Mobile Application Development (MAD)
• Intro to Android platform
• Platform architecture
• Application building blocks
• Development tools
• Textbook: Hello, Android
Few reasons to go MAD…
• Smart Phones
– Internet access anywhere
– Social networking
• Millions of mobile users
• Open standards
Introduction to Android
• Open software platform for mobile
development
• A complete stack – OS, Middleware,
Applications
• An Open Handset Alliance (OHA) project
• Powered by Linux operating system
• Fast application development in Java
• Open source under the Apache 2 license
Android Application Development.ppt
Linux Kernel
• Works as a HAL
• Device drivers
• Memory management
• Process management
• Networking
Libraries
• C/C++ libraries
• Interface through Java
• Surface manager – Handling UI Windows
• 2D and 3D graphics
• Media codecs, SQLite, Browser engine
Android Runtime
• Dalvik VM
– Dex files
– Compact and efficient than class files
– Limited memory and battery power
• Core Libraries
– Java 5 Std edition
– Collections, I/O etc…
Application Framework
• API interface
• Activity manager – manages application
life cycle.
Applications
• Built in and user apps
• Can replace built in apps
Course Objectives
• Mobile Application Development (MAD)
• Intro to Android platform
• Platform architecture
• Application building blocks
• Development tools
• Textbook: Hello, Android
Application Building Blocks
• Activity
• IntentReceiver
• Service
• ContentProvider
Activities
• Typically correspond to one UI screen
• But, they can:
– Be faceless
– Be in a floating window
– Return a value
IntentReceivers
• Components that respond to broadcast
‘Intents’
• Way to respond to external notification or
alarms
• Apps can invent and broadcast their own
Intent
Intents
• Think of Intents as a verb and object; a
description of what you want done
– E.g. VIEW, CALL, PLAY etc..
• System matches Intent with Activity that
can best provide the service
• Activities and IntentReceivers describe
what Intents they can service
Intents
GMail
Contacts
Home
Blogger
Chat
Client component makes a
request for a specific
action
“Pick photo”
System picks best
component for that action
New components can use
existing functionality
Blogger
Photo
Gallery
Services
• Faceless components that run in the
background
– E.g. music player, network download etc…
ContentProviders
• Enables sharing of data across
applications
– E.g. address book, photo gallery
• Provides uniform APIs for:
– querying
– delete, update and insert.
• Content is represented by URI and MIME
type
Course Objectives
• Mobile Application Development (MAD)
• Intro to Android platform
• Platform architecture
• Application building blocks
• Development tools
• Textbook: Hello, Android
Development Tools
• Eclipse
• Android SDK 2.0 or higher
developer.android.com
The Emulator
• QEMU-based ARM emulator
• Runs the same image as the
device
• Limitations:
– No Camera support
Devices
Hello World
• A great starting point:
http://developer.android.com/guide/tutorial
s/hello-world.html
• Generating UIs
– Views – building blocks
– E.g. TextView, EditText, Button
– Placed into Layouts
– E.g. LinearLayout, TableLayout,
AbsoluteLayout
Application Lifecycle
• Application run in their own processes
(VM, PID)
• Processes are started and stopped as
needed to run an application's
components
• Processes may be killed to reclaim
resources
Android Application Development.ppt
Lifecycle
• System
Process
GMail
Contacts
Home
• Home • Mail • Browser
• Map
Location Manager
XMPP Services
• Allows any app to send device-to-device
messages to other android users
• Data Messages are Intents with
name/value pairs
• Works with any gmail account…
• Can also build servers to deliver server-to-
device messages
Notification Manager
Notification Manager
• How background app interact with users
• Consistent notification presentation
Views
Views
Location Manager
End of Lecture
• First task, install the SDK and Eclipse for
instructions detailed in Assignment #1
• Will be performed in class as well.

More Related Content

PPTX
Android Application Development GDSC DCE Darbhanga.pptx
PPT
Android application development
PPTX
Android Application Development (1).pptx
PPT
Android Training
PPTX
Android Application Development PPT.pptx
PPT
Android app development
PPT
265.ppt
PPT
Introduction to android
Android Application Development GDSC DCE Darbhanga.pptx
Android application development
Android Application Development (1).pptx
Android Training
Android Application Development PPT.pptx
Android app development
265.ppt
Introduction to android

Similar to Android Application Development.ppt (20)

PPT
Synapse india reviews on android application
PPT
Synapseindia android apps application development
PPTX
Bluestacks ANDROID
PPTX
Android application development
PPTX
Introduction to Android
PPTX
Android quick talk
PPT
Lecture 1 Android Application Development.ppt
PPTX
Introduction to Android
PPT
Introduction to Android Development
PPT
My androidpresentation
PPSX
Android OS and its Features
PPTX
Mobile application development
PDF
Introduction to android
PPTX
Android development
PDF
Introduction to android
PPTX
Overview of Adroid Architecture.pptx
PPTX
android
PPT
Mobile appliaction w android week 1 by osama
PPT
Android Training in Chandigarh
PPT
Android General information
Synapse india reviews on android application
Synapseindia android apps application development
Bluestacks ANDROID
Android application development
Introduction to Android
Android quick talk
Lecture 1 Android Application Development.ppt
Introduction to Android
Introduction to Android Development
My androidpresentation
Android OS and its Features
Mobile application development
Introduction to android
Android development
Introduction to android
Overview of Adroid Architecture.pptx
android
Mobile appliaction w android week 1 by osama
Android Training in Chandigarh
Android General information
Ad

Recently uploaded (20)

PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
Structs to JSON How Go Powers REST APIs.pdf
PDF
Arduino robotics embedded978-1-4302-3184-4.pdf
PPTX
bas. eng. economics group 4 presentation 1.pptx
PPTX
Lesson 3_Tessellation.pptx finite Mathematics
PPT
Project quality management in manufacturing
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
Digital Logic Computer Design lecture notes
PPT
Mechanical Engineering MATERIALS Selection
PPTX
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
PPTX
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
PPTX
web development for engineering and engineering
PPTX
Internet of Things (IOT) - A guide to understanding
PPTX
Strings in CPP - Strings in C++ are sequences of characters used to store and...
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PPTX
CH1 Production IntroductoryConcepts.pptx
PDF
PPT on Performance Review to get promotions
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
Structs to JSON How Go Powers REST APIs.pdf
Arduino robotics embedded978-1-4302-3184-4.pdf
bas. eng. economics group 4 presentation 1.pptx
Lesson 3_Tessellation.pptx finite Mathematics
Project quality management in manufacturing
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Digital Logic Computer Design lecture notes
Mechanical Engineering MATERIALS Selection
MCN 401 KTU-2019-PPE KITS-MODULE 2.pptx
IOT PPTs Week 10 Lecture Material.pptx of NPTEL Smart Cities contd
web development for engineering and engineering
Internet of Things (IOT) - A guide to understanding
Strings in CPP - Strings in C++ are sequences of characters used to store and...
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
CH1 Production IntroductoryConcepts.pptx
PPT on Performance Review to get promotions
Model Code of Practice - Construction Work - 21102022 .pdf
Ad

Android Application Development.ppt