SlideShare a Scribd company logo
1 of 22
Android –
Application Framework
Yong Heui Cho @ Mokwon University
Some of slides are referred to:
[1] Nitin Ramchandani, Android OS, slideshare.
[2] Luca Bedogni & Marco Di Felice, Programming with Android: System
Architecture, SlidePlayer.
2
Smart Device Structure
2. Android Studio Tutorial
3. Basic Android OS
4. Android – Application
Framework
5. Android – Message
3
4
Libraries (I)
• Media Libraries - based on PacketVideo's OpenCORE;
the libraries support playback and recording of many
popular audio and video formats, as well as static
image files, including MPEG4, H.264, MP3, AAC, AMR,
JPG, and PNG
• LibWebCore - a modern web browser engine
which powers both the Android browser and an
embeddable web view
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
5
• SGL (Skia GL) - the underlying 2D graphics
engine
• 3D libraries - an implementation based on
OpenGL ES 1.0 APIs; the libraries use either
hardware 3D acceleration (where available) or
the included, highly optimized 3D software
rasterizer
• FreeType - bitmap and vector font rendering
• SQLite - a powerful and lightweight relational
database engine available to all applications
Libraries (II)
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
6
•Set of standardized APIs the developer will have to
implement
•Available for all the components a manufacturer can
integrate on its Android platform
Defines the interface that Android requires
hardware “drivers” to implement.
HW Abstraction Layer
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
7
• Android includes a set of core libraries that
provides most of the functionality available in
the core libraries of the Java programming
language
Core Libraries
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
8
Dalvik Virtual Machine
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
Before Android 5.0 Lollipop
• Designed for embedded environment
• Supports multiple VM processes
per device.
• Highly CPU-optimized byte code
interpreter.
• Uses run time memory very efficiently.
• Run optimized file format (.dex) Dalvik bytecode.
• Java .class/.jar are converted to .dex at build time.
99
Dalvik Java Virtual Machine
Java Source
Code
Java Byte
Code
Java Virtual
Machine
(JVM)
Java Source
Code
Java Byte
Code
Dalvik Byte
Code
Dalvik Virtual
Machine
(DVM)
Java
Compiler
Java
Compiler
Dex
Compiler
Stack-based
byte-code
Register-based
byte-code
Java Standard Edition
□ Courtesy to L. Bedogni & M. Di Felice, Programming with Android, SlidePlayer.
10
Android Runtime (ART)
• After Android 5.0 Lollipop
• ART introduces the use of ahead-of-
time (AOT) compilation by compiling
entire applications into native machine
code upon their installation.
– Faster execution of applications
– Improved battery time
– Improved memory allocation and garbage
collection
11
Comparison of ART & DVM
12
Application Framework (I)
•A Notification Manager that enables all
applications to display custom alerts in the status
bar
•An Activity Manager that manages the lifecycle of
applications and provides a common navigation
backstack
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
13
• A rich and extensible set of Views that can be used
to build an application, including lists, grids, text
boxes, buttons, and even an embeddable web
browser
• Content Providers that enable applications to access
data from other applications (such as Contacts), or to
share their own data
• A Resource Manager providing access to non-code
resources such as localized strings, graphics, and
layout files
Application Framework (II)
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
14
1.Activities
2.Intent
3.Services
4.Content Providers
Important App Components
15
•Activity is an User Interface Screen.
•An application may have two or more activities to handle
different phases of program.
For e.g. opening page, menu page, etc.
•Activity is responsible for saving its own state so that it can be
restored later as part of the application life cycle.
Activities
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
single activity multiple activities
16
•Intent is a mechanism for describing a specific action
such as pick a photo.
•Basically we register an Activity to handle an Intent.
Intents
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
17
•A content provider is a set of data wrapped up in a
custom API to read and write it. This is the best way
to share global data between applications.
•Google provide content provider for contacts.
Content Provider
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
18
•A service is a task that runs in the background
without the user’s direct interaction, similar to a Unix
daemon.
For e.g. we can have Music player program playing in
background even if we are browsing other programs.
Services
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
19
•Can combined 2D and 3D surfaces
•Can use OpenGL ES and 2D hardware accelerator for its
compositions
Provides a system-wide surface “composer” to render
all the surfaces in a frame buffer
Surface Manager
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
20
•Handle several types of devices (headphone,
ear piece…)
•Redirects audio stream to the specified output
Audio Manager
□ Courtesy to Nitin Ramchandani, Android OS, slideshare.
21
Fragment
• A piece of an application's UI or
behavior that can be placed in an
Activity
22
Android App Design
 GUI Definition
 Events Management
 Application Data Management
 Background Operations
 User Notifications
APPLICATION DESIGN:
□ Courtesy to L. Bedogni & M. Di Felice, Programming with Android, SlidePlayer.

More Related Content

What's hot

Android activities & views
Android activities & viewsAndroid activities & views
Android activities & viewsma-polimi
 
Android | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo SilvaAndroid | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo SilvaJAX London
 
Android service, aidl - day 1
Android service, aidl - day 1Android service, aidl - day 1
Android service, aidl - day 1Utkarsh Mankad
 
Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-pptSrijib Roy
 
An Introduction to the Android Framework -- a core architecture view from app...
An Introduction to the Android Framework -- a core architecture view from app...An Introduction to the Android Framework -- a core architecture view from app...
An Introduction to the Android Framework -- a core architecture view from app...William Liang
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android pptTaha Malampatti
 
android activity
android activityandroid activity
android activityDeepa Rani
 
Android Components & Manifest
Android Components & ManifestAndroid Components & Manifest
Android Components & Manifestma-polimi
 
Android resources
Android resourcesAndroid resources
Android resourcesma-polimi
 
Android resource
Android resourceAndroid resource
Android resourceKrazy Koder
 
[Android] Widget Event Handling
[Android] Widget Event Handling[Android] Widget Event Handling
[Android] Widget Event HandlingNikmesoft Ltd
 
Android Development: The Basics
Android Development: The BasicsAndroid Development: The Basics
Android Development: The BasicsMike Desjardins
 
Supporting multiple screens on android
Supporting multiple screens on androidSupporting multiple screens on android
Supporting multiple screens on androidLi SUN
 

What's hot (20)

Android activities & views
Android activities & viewsAndroid activities & views
Android activities & views
 
Android | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo SilvaAndroid | Android Activity Launch Modes and Tasks | Gonçalo Silva
Android | Android Activity Launch Modes and Tasks | Gonçalo Silva
 
05 intent
05 intent05 intent
05 intent
 
Fragment
Fragment Fragment
Fragment
 
Android service, aidl - day 1
Android service, aidl - day 1Android service, aidl - day 1
Android service, aidl - day 1
 
Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-ppt
 
An Introduction to the Android Framework -- a core architecture view from app...
An Introduction to the Android Framework -- a core architecture view from app...An Introduction to the Android Framework -- a core architecture view from app...
An Introduction to the Android Framework -- a core architecture view from app...
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
SQLITE Android
SQLITE AndroidSQLITE Android
SQLITE Android
 
Introduction to Android ppt
Introduction to Android pptIntroduction to Android ppt
Introduction to Android ppt
 
android activity
android activityandroid activity
android activity
 
Android Components & Manifest
Android Components & ManifestAndroid Components & Manifest
Android Components & Manifest
 
Android resources
Android resourcesAndroid resources
Android resources
 
Android User Interface
Android User InterfaceAndroid User Interface
Android User Interface
 
Android resource
Android resourceAndroid resource
Android resource
 
Android Networking
Android NetworkingAndroid Networking
Android Networking
 
[Android] Widget Event Handling
[Android] Widget Event Handling[Android] Widget Event Handling
[Android] Widget Event Handling
 
Android - Android Intent Types
Android - Android Intent TypesAndroid - Android Intent Types
Android - Android Intent Types
 
Android Development: The Basics
Android Development: The BasicsAndroid Development: The Basics
Android Development: The Basics
 
Supporting multiple screens on android
Supporting multiple screens on androidSupporting multiple screens on android
Supporting multiple screens on android
 

Viewers also liked

Android - Phone Calls
Android - Phone CallsAndroid - Phone Calls
Android - Phone CallsYong Heui Cho
 
Introduction to Bluetooth
Introduction to BluetoothIntroduction to Bluetooth
Introduction to BluetoothYong Heui Cho
 
TestSDIC2017-1(answer)
TestSDIC2017-1(answer)TestSDIC2017-1(answer)
TestSDIC2017-1(answer)Yong Heui Cho
 
TestSDS2016-1(Answer)
TestSDS2016-1(Answer)TestSDS2016-1(Answer)
TestSDS2016-1(Answer)Yong Heui Cho
 
TestSDIC2017-2(answer)
TestSDIC2017-2(answer)TestSDIC2017-2(answer)
TestSDIC2017-2(answer)Yong Heui Cho
 
스마트디바이스구조(강의계획서)2017-2
스마트디바이스구조(강의계획서)2017-2스마트디바이스구조(강의계획서)2017-2
스마트디바이스구조(강의계획서)2017-2Yong Heui Cho
 
TestECD2017-1(answer)
TestECD2017-1(answer)TestECD2017-1(answer)
TestECD2017-1(answer)Yong Heui Cho
 
TestSDS2016-2(Answer)
TestSDS2016-2(Answer)TestSDS2016-2(Answer)
TestSDS2016-2(Answer)Yong Heui Cho
 
ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)
ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)
ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)Yong Heui Cho
 
Android - Broadcast Receiver
Android - Broadcast ReceiverAndroid - Broadcast Receiver
Android - Broadcast ReceiverYong Heui Cho
 
ICT+UD 융합작품 개발문서(전자회로설계)
ICT+UD 융합작품 개발문서(전자회로설계)ICT+UD 융합작품 개발문서(전자회로설계)
ICT+UD 융합작품 개발문서(전자회로설계)Yong Heui Cho
 
Introduction to RTOS
Introduction to RTOSIntroduction to RTOS
Introduction to RTOSYong Heui Cho
 
Introduction to Smart Devices
Introduction to Smart DevicesIntroduction to Smart Devices
Introduction to Smart DevicesYong Heui Cho
 
Smart Device RF & Antennas
Smart Device RF & AntennasSmart Device RF & Antennas
Smart Device RF & AntennasYong Heui Cho
 

Viewers also liked (18)

Android - Phone Calls
Android - Phone CallsAndroid - Phone Calls
Android - Phone Calls
 
Introduction to Bluetooth
Introduction to BluetoothIntroduction to Bluetooth
Introduction to Bluetooth
 
TestSDIC2017-1(answer)
TestSDIC2017-1(answer)TestSDIC2017-1(answer)
TestSDIC2017-1(answer)
 
TestSDS2016-1(Answer)
TestSDS2016-1(Answer)TestSDS2016-1(Answer)
TestSDS2016-1(Answer)
 
TestSDIC2017-2(answer)
TestSDIC2017-2(answer)TestSDIC2017-2(answer)
TestSDIC2017-2(answer)
 
스마트디바이스구조(강의계획서)2017-2
스마트디바이스구조(강의계획서)2017-2스마트디바이스구조(강의계획서)2017-2
스마트디바이스구조(강의계획서)2017-2
 
Introduction to IoT
Introduction to IoTIntroduction to IoT
Introduction to IoT
 
TestECD2017-1(answer)
TestECD2017-1(answer)TestECD2017-1(answer)
TestECD2017-1(answer)
 
TestSDS2016-2(Answer)
TestSDS2016-2(Answer)TestSDS2016-2(Answer)
TestSDS2016-2(Answer)
 
ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)
ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)
ICT+UD IoT App 융합작품 개발문서(스마트디바이스구조)
 
Android - Broadcast Receiver
Android - Broadcast ReceiverAndroid - Broadcast Receiver
Android - Broadcast Receiver
 
Basic Android OS
Basic Android OSBasic Android OS
Basic Android OS
 
ICT+UD 융합작품 개발문서(전자회로설계)
ICT+UD 융합작품 개발문서(전자회로설계)ICT+UD 융합작품 개발문서(전자회로설계)
ICT+UD 융합작품 개발문서(전자회로설계)
 
Introduction to RTOS
Introduction to RTOSIntroduction to RTOS
Introduction to RTOS
 
Introduction to Smart Devices
Introduction to Smart DevicesIntroduction to Smart Devices
Introduction to Smart Devices
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
Android - Message
Android - MessageAndroid - Message
Android - Message
 
Smart Device RF & Antennas
Smart Device RF & AntennasSmart Device RF & Antennas
Smart Device RF & Antennas
 

Similar to Android - Application Framework

Android Architecture design programming with java
Android Architecture design programming with javaAndroid Architecture design programming with java
Android Architecture design programming with javassuser471dfb
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions newJoe Jacob
 
Chapter 1 Introduction to android.ppt pl
Chapter 1 Introduction to android.ppt plChapter 1 Introduction to android.ppt pl
Chapter 1 Introduction to android.ppt plENBAKOMZAWUGA
 
Androidoverview 100405150711-phpapp01
Androidoverview 100405150711-phpapp01Androidoverview 100405150711-phpapp01
Androidoverview 100405150711-phpapp01Santosh Sh
 
Presentation for Android OS
Presentation for Android OSPresentation for Android OS
Presentation for Android OSMukul Cool
 
Android General information
Android General informationAndroid General information
Android General informationPrashant Gosai
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versionsindiangarg
 
Enhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osEnhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osArnav Gupta
 
A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)Siji Sunny
 
Enhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osEnhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osArnav Gupta
 
Android development tutorial
Android development tutorialAndroid development tutorial
Android development tutorialMohammad Taj
 

Similar to Android - Application Framework (20)

My androidpresentation
My androidpresentationMy androidpresentation
My androidpresentation
 
Android Architecture design programming with java
Android Architecture design programming with javaAndroid Architecture design programming with java
Android Architecture design programming with java
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions new
 
Chapter 1 Introduction to android.ppt pl
Chapter 1 Introduction to android.ppt plChapter 1 Introduction to android.ppt pl
Chapter 1 Introduction to android.ppt pl
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Androidoverview 100405150711-phpapp01
Androidoverview 100405150711-phpapp01Androidoverview 100405150711-phpapp01
Androidoverview 100405150711-phpapp01
 
document
documentdocument
document
 
Android OS
Android OSAndroid OS
Android OS
 
Presentation for Android OS
Presentation for Android OSPresentation for Android OS
Presentation for Android OS
 
Android General information
Android General informationAndroid General information
Android General information
 
Android Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and VersionsAndroid Fundamentals, Architecture and Versions
Android Fundamentals, Architecture and Versions
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android report.
Android report.Android report.
Android report.
 
Enhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osEnhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_os
 
01 03 - introduction to android
01  03 - introduction to android01  03 - introduction to android
01 03 - introduction to android
 
A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)A deep dive into Android OpenSource Project(AOSP)
A deep dive into Android OpenSource Project(AOSP)
 
Embedded Android : System Development - Part I
Embedded Android : System Development - Part IEmbedded Android : System Development - Part I
Embedded Android : System Development - Part I
 
Enhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_osEnhancing and modifying_the_core_android_os
Enhancing and modifying_the_core_android_os
 
Android development tutorial
Android development tutorialAndroid development tutorial
Android development tutorial
 

More from Yong Heui Cho

Android - Sensor Manager
Android - Sensor ManagerAndroid - Sensor Manager
Android - Sensor ManagerYong Heui Cho
 
Android - Broadcast Receiver
Android - Broadcast ReceiverAndroid - Broadcast Receiver
Android - Broadcast ReceiverYong Heui Cho
 
TestBCD2018-2(answer)
TestBCD2018-2(answer)TestBCD2018-2(answer)
TestBCD2018-2(answer)Yong Heui Cho
 
TestSDS2018-2(answer)
TestSDS2018-2(answer)TestSDS2018-2(answer)
TestSDS2018-2(answer)Yong Heui Cho
 
TestEC2018-2(answer)
TestEC2018-2(answer)TestEC2018-2(answer)
TestEC2018-2(answer)Yong Heui Cho
 
TestEC2018-1(answer)
TestEC2018-1(answer)TestEC2018-1(answer)
TestEC2018-1(answer)Yong Heui Cho
 
TestBCD2018-1(answer)
TestBCD2018-1(answer)TestBCD2018-1(answer)
TestBCD2018-1(answer)Yong Heui Cho
 
TestSDS2018-1(answer)
TestSDS2018-1(answer)TestSDS2018-1(answer)
TestSDS2018-1(answer)Yong Heui Cho
 
BJT - Analysis of Bias
BJT - Analysis of BiasBJT - Analysis of Bias
BJT - Analysis of BiasYong Heui Cho
 
TestCloud2018-2(answer)
TestCloud2018-2(answer)TestCloud2018-2(answer)
TestCloud2018-2(answer)Yong Heui Cho
 
TestECD2018-1(answer)
TestECD2018-1(answer)TestECD2018-1(answer)
TestECD2018-1(answer)Yong Heui Cho
 
Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)Yong Heui Cho
 
TestCloud2018-1(answer)
TestCloud2018-1(answer)TestCloud2018-1(answer)
TestCloud2018-1(answer)Yong Heui Cho
 
Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)Yong Heui Cho
 
RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1Yong Heui Cho
 
Computing Paradigm - rev1
Computing Paradigm - rev1Computing Paradigm - rev1
Computing Paradigm - rev1Yong Heui Cho
 

More from Yong Heui Cho (20)

Android - Sensor Manager
Android - Sensor ManagerAndroid - Sensor Manager
Android - Sensor Manager
 
Android - Broadcast Receiver
Android - Broadcast ReceiverAndroid - Broadcast Receiver
Android - Broadcast Receiver
 
Android - Message
Android - MessageAndroid - Message
Android - Message
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Computing Paradigm
Computing ParadigmComputing Paradigm
Computing Paradigm
 
TestBCD2018-2(answer)
TestBCD2018-2(answer)TestBCD2018-2(answer)
TestBCD2018-2(answer)
 
TestSDS2018-2(answer)
TestSDS2018-2(answer)TestSDS2018-2(answer)
TestSDS2018-2(answer)
 
TestEC2018-2(answer)
TestEC2018-2(answer)TestEC2018-2(answer)
TestEC2018-2(answer)
 
TestEC2018-1(answer)
TestEC2018-1(answer)TestEC2018-1(answer)
TestEC2018-1(answer)
 
TestBCD2018-1(answer)
TestBCD2018-1(answer)TestBCD2018-1(answer)
TestBCD2018-1(answer)
 
TestSDS2018-1(answer)
TestSDS2018-1(answer)TestSDS2018-1(answer)
TestSDS2018-1(answer)
 
BJT - Analysis of Bias
BJT - Analysis of BiasBJT - Analysis of Bias
BJT - Analysis of Bias
 
TestCloud2018-2(answer)
TestCloud2018-2(answer)TestCloud2018-2(answer)
TestCloud2018-2(answer)
 
TestECD2018-1(answer)
TestECD2018-1(answer)TestECD2018-1(answer)
TestECD2018-1(answer)
 
Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)Test-SDIC2018-2(answer)
Test-SDIC2018-2(answer)
 
TestCloud2018-1(answer)
TestCloud2018-1(answer)TestCloud2018-1(answer)
TestCloud2018-1(answer)
 
Cloud Service Model
Cloud Service ModelCloud Service Model
Cloud Service Model
 
Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)Test-SDIC2018-1(Answer)
Test-SDIC2018-1(Answer)
 
RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1RF 증폭기 설계(Design of RF Amplifier)-rev1
RF 증폭기 설계(Design of RF Amplifier)-rev1
 
Computing Paradigm - rev1
Computing Paradigm - rev1Computing Paradigm - rev1
Computing Paradigm - rev1
 

Recently uploaded

TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....rightmanforbloodline
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceIES VE
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)Samir Dash
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governanceWSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringWSO2
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 

Recently uploaded (20)

TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 

Android - Application Framework

  • 1. Android – Application Framework Yong Heui Cho @ Mokwon University Some of slides are referred to: [1] Nitin Ramchandani, Android OS, slideshare. [2] Luca Bedogni & Marco Di Felice, Programming with Android: System Architecture, SlidePlayer.
  • 2. 2 Smart Device Structure 2. Android Studio Tutorial 3. Basic Android OS 4. Android – Application Framework 5. Android – Message
  • 3. 3
  • 4. 4 Libraries (I) • Media Libraries - based on PacketVideo's OpenCORE; the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG • LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 5. 5 • SGL (Skia GL) - the underlying 2D graphics engine • 3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3D software rasterizer • FreeType - bitmap and vector font rendering • SQLite - a powerful and lightweight relational database engine available to all applications Libraries (II) □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 6. 6 •Set of standardized APIs the developer will have to implement •Available for all the components a manufacturer can integrate on its Android platform Defines the interface that Android requires hardware “drivers” to implement. HW Abstraction Layer □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 7. 7 • Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language Core Libraries □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 8. 8 Dalvik Virtual Machine □ Courtesy to Nitin Ramchandani, Android OS, slideshare. Before Android 5.0 Lollipop • Designed for embedded environment • Supports multiple VM processes per device. • Highly CPU-optimized byte code interpreter. • Uses run time memory very efficiently. • Run optimized file format (.dex) Dalvik bytecode. • Java .class/.jar are converted to .dex at build time.
  • 9. 99 Dalvik Java Virtual Machine Java Source Code Java Byte Code Java Virtual Machine (JVM) Java Source Code Java Byte Code Dalvik Byte Code Dalvik Virtual Machine (DVM) Java Compiler Java Compiler Dex Compiler Stack-based byte-code Register-based byte-code Java Standard Edition □ Courtesy to L. Bedogni & M. Di Felice, Programming with Android, SlidePlayer.
  • 10. 10 Android Runtime (ART) • After Android 5.0 Lollipop • ART introduces the use of ahead-of- time (AOT) compilation by compiling entire applications into native machine code upon their installation. – Faster execution of applications – Improved battery time – Improved memory allocation and garbage collection
  • 12. 12 Application Framework (I) •A Notification Manager that enables all applications to display custom alerts in the status bar •An Activity Manager that manages the lifecycle of applications and provides a common navigation backstack □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 13. 13 • A rich and extensible set of Views that can be used to build an application, including lists, grids, text boxes, buttons, and even an embeddable web browser • Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data • A Resource Manager providing access to non-code resources such as localized strings, graphics, and layout files Application Framework (II) □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 15. 15 •Activity is an User Interface Screen. •An application may have two or more activities to handle different phases of program. For e.g. opening page, menu page, etc. •Activity is responsible for saving its own state so that it can be restored later as part of the application life cycle. Activities □ Courtesy to Nitin Ramchandani, Android OS, slideshare. single activity multiple activities
  • 16. 16 •Intent is a mechanism for describing a specific action such as pick a photo. •Basically we register an Activity to handle an Intent. Intents □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 17. 17 •A content provider is a set of data wrapped up in a custom API to read and write it. This is the best way to share global data between applications. •Google provide content provider for contacts. Content Provider □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 18. 18 •A service is a task that runs in the background without the user’s direct interaction, similar to a Unix daemon. For e.g. we can have Music player program playing in background even if we are browsing other programs. Services □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 19. 19 •Can combined 2D and 3D surfaces •Can use OpenGL ES and 2D hardware accelerator for its compositions Provides a system-wide surface “composer” to render all the surfaces in a frame buffer Surface Manager □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 20. 20 •Handle several types of devices (headphone, ear piece…) •Redirects audio stream to the specified output Audio Manager □ Courtesy to Nitin Ramchandani, Android OS, slideshare.
  • 21. 21 Fragment • A piece of an application's UI or behavior that can be placed in an Activity
  • 22. 22 Android App Design  GUI Definition  Events Management  Application Data Management  Background Operations  User Notifications APPLICATION DESIGN: □ Courtesy to L. Bedogni & M. Di Felice, Programming with Android, SlidePlayer.