Android OS Kesav Kaliyaperumal kesav.kaliyaperumal@gmail.com.

Slides:



Advertisements
Similar presentations
Android Application Development A Tutorial Driven Course.
Advertisements

Google Android Introduction to Mobile Computing. Android is part of the build a better phone process Open Handset Alliance produces Android Comprises.
Programming with Android: System Architecture
Introduction.  Professor  Adam Porter 
What is Android?.
Android architecture overview
Chapter 1: Voilà! Meet the Android
Introduction to Android Mohammad A. Gowayyed CS334-Spring 2014.
Android Platform Overview (1)
Android Aims to bring Internet-style innovation and openness to mobile phones.
DEPARTMENT OF COMPUTER ENGINEERING
ANDROID OPERATING SYSTEM Guided By,Presented By, Ajay B.N Somashekar B.T Asst Professor MTech 2 nd Sem (CE)Dept of CS & E.
Intro to Android For the iOS fan Denver Java Users Group January 11, 2012 Mike Wolfson.
Android and Project Structure. Android Android OS – Built on Linux Kernel – Phones – Netbooks – Readers – Other???
Mobile Application Development
Google Android as a mobile development platform T Internet Technologies for Mobile Computing Olli Mäkinen.
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department Asst.Prof.Dr.Ahmet Ünveren SPRING Computer Engineering Department.
ANDROID PROGRAMMING MODULE 1 – GETTING STARTED
S MARTPHONE A PPLICATION D EVELOPMENT Sam Palmer.
Introduction to Android Platform Overview
To be Presented by, T.Sathishkumar [11mw07] 1. Synopsis Introduction Version Features License An Application Development Demo Possibilities Advantages.
Chapter 1: Voilà! Meet the Android. Smartphones –Can browse the Web –Allow you to play games –Use business applications –Check –Play music –Record.
Android Introduction Platform Overview.
Mobile Application Development with ANDROID Tejas Lagvankar UMBC 29 April 2009.
Mobile Application Development with ANDROID. Agenda Mobile Application Development (MAD) Intro to Android platform Platform architecture Application building.
About me Yichuan Wang Android Basics Credit goes to Google and UMBC.
Mobile Application Development using Android
Android Introduction Based on slides made by
@2011 Mihail L. Sichitiu1 Android Introduction Platform Overview.
Android Programming By Mohsen Biglari Android Programming, Part1: Introduction 1 Part1: Introduction By Mohsen Biglari.
Chapter 1: Voilà! Meet the Android
Copyright© Jeffrey Jongko, Ateneo de Manila University Android.
01. Introduction to Android Prof. Oum Saokosal Master of Engineering in Information Systems, South Korea
Presentation Seminar on “IMAGE SLIDER –AN ANDROID APPLICATION”
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Android for Java Developers Denver Java Users Group Jan 11, Mike
ANDROID OS Architecture
ANDROID 응용 프로그래밍 과정 – 목차 - 안드로이드란 - 안드로이드가 만들어지게 된배경 - 안드로이드의 철학 - 안드로이드 환경설정 ( SDK download, eclipse plug-in 설정, 간단한 프로그램 실행 ) - 안드로이드 동작원리 - 안드로이드 핵심.
Overview of Android Application Development
ANDROID BY:-AANCHAL MEHTA MNW-880-2K11. Introduction to Android Open software platform for mobile development A complete stack – OS, Middleware, Applications.
Created By. Jainik B Patel Prashant A Goswami Gujarat Vidyapith Computer Department Ahmedabad.
1 Android Introduction Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
Mobile Application Development with ANDROID Umang Patel(6537) LDCE.
By, Rutika R. Channawar. Content Introduction Open Handset Alliance Minimum Hardware Requirements Versions Feature Architecture Advantages Disadvantages.
1 Android Workshop Platform Overview. 2 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware.
J.BHAVANA 3/4B.TECH CSE Ch.Rochasmathi 3/4B.tech CSE.
Android Development For Beginners. What is Android? Android is an open mobile phone platform that was developed by Google and later by Open Handset Alliance.
Android operating system N. Sravani M. Tech(CSE) (09251D5804)
By Adam Reimel. Outline Introduction Platform Architecture Future Conclusion.
Android. I. What’s Android Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google. Android is designed.
Accelerometer based motion gestures for mobile devices Presented by – Neel Parikh Advisor Committee members Dr. Chris Pollett Dr. Robert Chun Dr. Mark.
ANDROID OS Ravi Soni MTech (CS) III Sem. W HAT IS A NDROID ? Android is a software stack for mobile devices that includes an operating system, middleware.
Android. Android An Open Handset Alliance Project A software platform and operating system for mobile devices Based on the Linux kernel Developed by Google.
Google. Android What is Android ? -Android is Linux Based OS -Designed for use on cell phones, e-readers, tablet PCs. -Android provides easy access to.
The Basics of Android App Development Sankarshan Mridha Satadal Sengupta.
Android Mobile Application Development
Visit for more Learning Resources
Architecture of Android
ANDROID AN OPEN HANDSET ALLIANCE PROJECT
Android.
Software Engineering in Mobile Computing
Contents: Introduction Different Mobile Operating Systems
CMPE419 Mobile Application Development
ANDROID OS Architecture
Application Development A Tutorial Driven Course
Android Developer Fundamentals V2
Android Introduction Platform Mihail L. Sichitiu.
Android Platform, Android App Basic Components
CMPE419 Mobile Application Development
Presentation transcript:

Android OS Kesav Kaliyaperumal kesav.kaliyaperumal@gmail.com

Yummy Desserts! Cupcake Donuts Éclair Frozen Yoghurt (Froyo) Gingerbread Honeycomb What do these have in common?

Smartphone OS Symbian Windows Mobile RIM Blackberry OS Apple iOS Google Android Palm WebOS Windows Phone 7

Android OS Fastest growing mobile OS Over 300,000 Android activations a day Android overtook iOS as the dominant OS in US during 2H 2010 First phone launched HTC G1 in 2008 Currently an OS of choice for Motorola, HTC, Samsung, Sony Ericsson, among others Software updates every few months

Android – what is it? software stack for mobile devices incl. OS, middleware and key applications Open source – source code is open and contributions are welcome application framework enabling reuse/replacement of apps Dalvik virtual machine optimized for mobile integrated browser based on webkit Optimized graphics – 2D graphics library, 3D based on OPEN GL ES SQLite for data storage Media support (MPEG4, H.264, MP3, AAC, JPG, PNG,…) Support for radio interfaces, Bluetooth, WiFi, Camera, GPS, accelerometer Software Development Kit (SDK) Preinstalled applications from Google (GMS) Gmail, Maps, Search, Voice Search, Youtube

Software Stack Linux kernel Libraries Android run time core libraries Dalvik virtual machine application layer application protocol

Android Architecture

Android Google Maps and other GMS applications Background services and applications allows multi tasking of applications Shared Data and interprocess communication All applications are equal does not discriminate between native and non-native applications allows any applications to be enhanced/reused p2p interdevice application messaging

Dalvik VM All applications written in Java and converted to the dalvik executable .dex Every android app runs its own process, with its own instance of the dalvik virtual machine Not a traditional JVM, but a custom VM designed to run multiple instances efficiently on a single device VM uses linux kernel to handle low-level functionality incl. security, threading, process and memory management

Application Framework Rich, extensible set of Views apps can inclused lists, grids, text boxes, buttons, web browser Content Providers allows data access from other applications or share own data Resource Manager access to localized strings, graphics, layout files Notification Manager enables custom alerts to be displayed in status bar Activity Manager Manages lifecycle of applications and provides navigation backstack

Application Fundamentals Activities application presentation layer Services invisible components, update data sources, visible activities, trigger notifications perform regular processing even when app is not active or invisible Content Providers shareable data store Intents message passing framework broadcase messages system wide, for an action to be performed Broadcast receivers consume intent broadcasts lets app listen for intents matching a specific criteria like location Notifications Toast notification Status Bar Notification Dialog notification

Applications All apps (native and 3rd party) are written using the same APIs and run on the same run time executable All apps have APIs for hardware access, location-based services, support for background services, map-based activities, 2D and 3D graphics. App Widgets are miniature app views that can be embedded in other apps like Home Screen

App Priority and Processes Android apps do not have control over their own life cycles Aggressively manages resources to ensure device responsiveness and kills process/apps when needed Active Process – critical priority Visible Process – high priority Started Service Process Background Process – low priority Empty process

Client apps Developed using the Android SDK and installed on user devices Compiled Java code, with data and resource – bundled by Android Asset Packaging tool (AAPT) into Android package or .apk All applications have Android Manifest file in its root directory provides essential information about app Could be installed directly on phone, but necessary to be distributed thru Market

Web Apps An alternative to standalone apps Developed using web standards and accessed through browser – nothing to install on devices Mixing client and web apps is also possible – Client apps can embed web pages using “Webview” in Android app

SDK Android APIs, Full Documentation and Sample code Development tools Dalvik Debug Monitor Service (DDMS) Android Debug Bridge (ADB) Android Emulator Online support and blog Native Development Kit also available allows developers to implement parts of apps in native-code languages like C/C++ Plug in available to use Eclipse integrated development environment Developer forums and developer phones from Google, MOTO Dev studio from Motorola

Android Market Google Market - Part of GMS apps 3rd party apps submitted to Google, approved and distributed through Market Both Free and Paid apps Apps now limited to 50 MB; updates possible through Market Monetization through ads available Available in many countries, not all countries have support for paid apps Other Market place applications available – Amazon has announced its own Android Market place App searches filtered based on Manifest file (eg. if a device does not have trackball, apps using trackball will be filtered out) Every app publishes a list of components the app will access and permissions need to be granted before installation Apps installed on device and SD card (SD Card from Froyo)

Search Core feature in android User should be able to search any data on device or internet Usually one of the android buttons Search suggestions based on recent queries Provide custom search suggestions that match actual results in application data system side Quick Search Box Voice Search available and enhanced in recent releases

Locations & Maps Compelling and most popular apps for mobile devices Google Maps provides free navigation applications allowed access to location services supported by device Google provides Maps external library allows built-in downloading, rendering and caching of Maps tiles, and other display options and controls

Device Administration Froyo introduces support for enterprise applications with Device Administraion API allows to create security-aware applications to control employee devices Apps might include Email clients remote wipe device management services and apps

Android Software Updates Android 1.0 – G1 1.5 – Cupcake 1.6 – Donuts (CDMA support) 2.0 – Éclair (Droid introduced with Éclair) 2.2 – Froyo 2.3 Gingerbread (SDK released 2 weeks ago and source will follow soon) API Levels used by apps to identify software version on the device Android apps are generally forward compatible with newer version, but not necessarily backwards compatible

Compatibility Why? Android compatibility is free and easy Allow customizable devices Create Common eco system Android compatibility is free and easy Obtain Android source code Comply with Android Compatibility Definition (ACD) doc List requirements that need to be met for devices to be compatible with a particular version on Android Pass the Compatibility Test Suite (CTS) Automated test harness running on desktop, manages test exectuion Test cases written, packaged as .apk to run on actual device or emulator Porting guide available for bringing up Android on custom HW

Other possibilities Google TV - a new platform based on Android Tablets – Samsung Galaxy tab introduced in Oct 2010 eBook reader – Latest Barnes and Noble Nook is an Android tablet

Resources http://www.android.com http://http://android- developers.blogspot.com http://developer.motorola.com/