The Android Platform



Similar documents
Overview of CS 282 & Android

Programming the Android Platform. Logistics

Android Architecture. Alexandra Harrison & Jake Saxton

A Short Introduction to Android

Lecture 1 Introduction to Android

ITG Software Engineering

Android Basics. Xin Yang

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi

Introduction to Android

ANDROID OPERATING SYSTEM

Overview. The Android operating system is like a cake consisting of various layers.

Android Operating System

An Introduction to Android

Lecture 17: Mobile Computing Platforms: Android. Mythili Vutukuru CS 653 Spring 2014 March 24, Monday

Android Operating System:

Android Application Development. Daniel Switkin Senior Software Engineer, Google Inc.

Synthesis for Developing Apps on Mobile Platforms

GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS

ANDROID PROGRAMMING - INTRODUCTION. Roberto Beraldi

Example of Standard API

Workshop on Android and Applications Development

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Mobile Phones Operating Systems

TUTORIALS AND QUIZ ANDROID APPLICATION SANDEEP REDDY PAKKER. B. Tech in Aurora's Engineering College, 2013 A REPORT

Deep Inside Android. OpenExpo Zurich September 25 th, Gilles Printemps - Senior Architect. Copyright 2007 Esmertec AG.

Performance Analysis of Android Platform

ANDROID INTRODUCTION TO ANDROID

Introduction to Android

Building an Android client. Rohit Nayak Talentica Software

Introduction to Android: Hello, Android! 26 Mar 2010 CMPT166 Dr. Sean Ho Trinity Western University

Here to take you beyond Mobile Application development using Android Course details

An Introduction to Android. Huang Xuguang Database Lab. Inha University

Mobile Devices - An Introduction to the Android Operating Environment. Design, Architecture, and Performance Implications

Mobile Devices - An Introduction to the Android Operating Environment. Design, Architecture, and Performance Implications

ANDROID PROGRAMMING - INTRODUCTION. Roberto Beraldi

INTRODUCTION TO ANDROID CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 11 02/15/2011

Android Application Development

Android Geek Night. Application framework

Mobile Application Development Android

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months

Introduction to Android Development. Jeff Avery CS349, Mar 2013

Android (Basic + Advance) Application Development

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

Android Architecture Diagram:

Programming with Android

Android Development. Marc Mc Loughlin

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY

Graduate presentation for CSCI By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

ODROID Multithreading in Android

A software stack for mobile devices:

Android Programming and Security

Research and Design of Universal and Open Software Development Platform for Digital Home

Application of Android OS as Real-time Control Platform**

Creating and Using Databases for Android Applications

Programming with Android: System Architecture. Dipartimento di Scienze dell Informazione Università di Bologna

Introduction to Android SDK Jordi Linares

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

Deployment of Mobile Application for Multiplatform Operating Systems

UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

Android 5.0: Lollipop OS

Issues in Android on Mobile Platform and Their Resolution

Android Developer Fundamental 1

Hacking your Droid ADITYA GUPTA

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

OMX, Android, GStreamer How do I decide what to use? 15 July 2011

Praktikum Entwicklung von Mediensystemen (Android)

Review On Google Android a Mobile Platform

Android Commercial Spyware Disease and Medication

ANDROID A Workshop on Android Application Development Organized by Computer Science & Engg Dept Lingaya s University

Analysis of advanced issues in mobile security in android operating system

ELEC 377. Operating Systems. Week 1 Class 3

Understand and Build Android Programming Environment. Presented by: Che-Wei Chang

Software development. Development requirements. Java. Android SDK. Eclipse IDE (optional)

3. Software Installation. 4. Introduction to Android OS. 5. Using Android OS / Devices. 6. Eclipse debug with Android app. 8. Units of measurement

RoverPal - A Mobile Payment Application

COMMONLY, the problem that most any computing platform will have is interoperability, and

1. Introduction to Android

Berlin Institute of Technology FG Security in Telecommunications

Module Title: Software Development A: Mobile Application Development

Development. SriSeshaa Technologies. Table of Contents

Introduction to Android Android Architecture Software Development Purpose of the project Location Based Service (LBS) Android. Location class Google

CS378 -Mobile Computing. Android Overview and Android Development Environment

Mobile Application Development 2014

International Engineering Journal For Research & Development

ANDROID. Programming basics

Mobile Applications Grzegorz Budzyń Lecture. 2: Android Applications

Android Development: Part One

Smartphone market share

Android. Seminar report. Submitted in partial fulfillment of the requirement for the award of degree of Computer Science

Android Architecture For Beginners

Introduction to Android

A Modular Approach to Teaching Mobile APPS Development

Praktikum Entwicklung Mediensysteme (für Master)

System Structures. Services Interface Structure

Transcription:

The Android Platform F. Mallet Frederic.Mallet@unice.fr Université Nice Sophia Antipolis

A software stack for mobile devices The Android Platform OS kernel, system libraries, application frameworks & key apps Android SDK for creating apps Libraries & Development tools Lots of documentation http://developer.android.com/ F. Mallet 2

The Android Architecture F. Mallet 3

Linux Kernel Some standard services Security Memory & process management File & network I/O Device drivers Android-specific Power management Android shared memory Low Memory killer Interprocess communication (IPC) F. Mallet 4

The Android Architecture F. Mallet 5

Libraries SystemC Library Bionic LibC Surface Manager Display Management, activity manager Media Framework Audio/Video Webkit Browser engine OpenGL Graphics engine SQLite Relational database engine F. Mallet 6

The Android Architecture F. Mallet 7

Two Main Components Core Java Libraries Dalvik Virtual Machine Just-In-Time Compilation Now replaced by Android Runtime (ART) Native compilation on installation Core Java Libraries Basic Java Classes: java.*, javax.* App Lifecycle: android.* Internet/Web services: org. * Unit Testing: Junit.* Android RunTime F. Mallet 8

Dalvik Virtual Machine Code partly in Java, partly in xml resources All transformed into Java Bytecode (.class) DX Converts.class into.dex Resource-constrained environments Dalvik and Android RunTime Slower CPU, less RAM, limited battery Obfuscated bytecode Dalvik VM can execute.dex files Android RunTime At Installation Time.dex are compiled into native code depending on the target processor F. Mallet 9

The Android Architecture F. Mallet 10

Set of Applications to build the Framework Activity Manager Application Framework Interacts with the overall activities running in the system. Activity Description Memory Information Start Activities and monitor them (e.g. Activity Not Responding) Broadcast Intents http://developer.android.com/reference/android/app/activitymanager.html F. Mallet 11

Set of Applications to build the Framework Activity Manager Package Manager Install, remove, list apps installed on the device Application Framework http://developer.android.com/reference/android/con tent/pm/packagemanager.html F. Mallet 12

Set of Applications to build the Framework Activity Manager Package Manager Window Manager One for each display Attaches new views on a display Application Framework http://developer.android.com/reference/andro id/view/windowmanager.html F. Mallet 13

Set of Applications to build the Framework Activity Manager Package Manager Window Manager Telephony Manager Application Framework Provides information about telephony services Available services and states (ringing, off-hook), subscriber information Can register listener to receive notifications on state changes Data connection (active, no traffic, connected, suspended ) [PERMISSION PROTECTED] http://developer.android.com/reference/android/tele phony/telephonymanager.html F. Mallet 14

Set of Applications to build the Framework Activity Manager Package Manager Window Manager Telephony Manager Content Providers Manager access to a structured set of data Mechanisms for data security Application Framework http://developer.android.com/guide/topics/providers/content-providers.html F. Mallet 15

Set of Applications to build the Framework Activity Manager Package Manager Window Manager Telephony Manager Content Providers Resource Manager Application Framework Provides access to non-code resources (icons, layout, strings ) F. Mallet 16

Set of Applications to build the Framework Activity Manager Package Manager Window Manager Telephony Manager Content Providers Resource Manager View System Handles GUI-related tasks Set of widgets for building GUI Application Framework http://developer.android.com/reference/android/view/view.html F. Mallet 17

Set of Applications to build the Framework Activity Manager Package Manager Window Manager Telephony Manager Content Providers Resource Manager View System Location Manager Application Framework Access to system location services Periodic update to geographical location Fire a specific intent when entering a pre-defined location F. Mallet 18 http://developer.android.com/reference/android/location/locationmanager.html

Application Framework Set of Applications to build the Framework Activity Manager Package Manager Window Manager Telephony Manager Content Providers Resource Manager View System Location Manager Notification Manager (see Notification.Builder) Notify the user of events occurrences (icon in status bar, flashing LEDS on the device, flashing backlight, play sound, vibrating, ) F. Mallet 19 http://developer.android.com/reference/android/app/notificationmanager.html

The Android Architecture F. Mallet 20

Standard Applications Home, Contacts, Phone, Browser Can be replaced by your own (answer standard intents) Standard Activity actions Applications ACTION_DIAL: Dial numbers ACTION_VIEW: Tel: 123 content://contacts/people/1 (CONTACTS) AUDIO, VIDEO, TEXT, GEO_LOCATION, EBOOK, WEB_PAGES ACTION_EDIT: modify ACTION_SEND, ACTION_CHOOSER, ACTION_SYNC Standard BroadCast Actions ACTION_TIME_TICK, ACTION_SHUTDOWN F. Mallet 21

Android Developers http://developer.android.com/training/index.html Other lectures at UNS P. Renevier E. Amosse Books References Beginning Android, M. L. Murphy, APress Android Programming: The Big Nerd Ranch Guide, B. Phillips, B. Hardy, http://www.bignerdranch.com F. Mallet 22