Google Androidm

Download as pdf or txt
Download as pdf or txt
You are on page 1of 36

Presentation on

Android
Application Development

By
K.Harshitha
21K61A04479
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
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
Home System picks best
component for that action Photo
Gallery
Contacts

“Pick
GMail photo”

Client component makes


Chat a request for a specific
action
Blogger
Blogger
New components can
use existing functionality
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/tuto
rials/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
Lifecycle
• System • Home • Mail • Browser
Process

Home

• Map
Contacts

GMail
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
THANKING YOU

You might also like