SlideShare une entreprise Scribd logo
1  sur  8
Télécharger pour lire hors ligne
1


Day 1
Session 1
What is Android?

      Android is a software stack for mobile devices that includes an operating system, middleware
       and key applications.
      Android gives you a world-class platform for creating apps and games for Android users


Android version

      Android 1.0
      Android 1.1
      Cupcake 1.5
      Donut 1.6
      Éclair 2.0/2.1
      Froyo 2.2.x
      Gingerbread 2.3.x
      Honeycomb 3.x
      Ice Cream Sandwich 4.0.x
      Jelly Bean 4.1

       Being an Android user you may know how the basic functions such as making a call, sending a
       text message, changing the system settings, install or uninstall apps etc. Well! All Android users
       know these, but not enough for a developer. Then what else details are a developer required to
       know about Android, I’ll explain. To be a developer, you should know all the key concepts of
       Android. That is, you should know all the nuts and bolts of Android OS.




                   @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
2


Android Architecture




The above figure shows the diagram of Android Architecture. The Android OS can be referred to as a
software stack of different layers, where each layer is a group of sveral program components. Together
it includes operating system, middleware and important applications. Each layer in the architecture
provides different services to the layer just above it. We will examine the features of each layer in detail.

Linux Kernel

The basic layer is the Linux kernel. The whole Android OS is built on top of the Linux 2.6 Kernel with
some further architectural changes made by Google. It is this Linux that interacts with the hardware and
contains all the essential hardware drivers. Drivers are programs that control and communicate with the
hardware. For example, consider the Bluetooth function. All devices has a Bluetooth hardware in it.
Therefore the kernel must include a Bluetooth driver to communicate with the Bluetooth hardware. The
Linux kernel also acts as an abstraction layer between the hardware and other software layers. Android
uses the Linux for all its core functionality such as Memory management, process management,
networking, security settings etc. As the Android is built on a most popular and proven foundation, it
made the porting of Android to variety of hardware, a relatively painless task.




                    @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
3


Libraries

The next layer is the Android’s native libraries. It is this layer that enables the device to handle
different types of data. These libraries are written in c or c++ language and are specific for a
particular hardware.

Some of the important native libraries include the following:

Surface Manager: It is used for compositing window manager with off-screen buffering. Off-screen
buffering means you cant directly draw into the screen, but your drawings go to the off-screen buffer.
There it is combined with other drawings and form the final screen the user will see. This off screen
buffer is the reason behind the transparency of windows.

Media framework: Media framework provides different media codecs allowing the recording and
playback of different media formats

SQLite: SQLite is the database engine used in android for data storage purposes

WebKit: It is the browser engine used to display HTML content

OpenGL: Used to render 2D or 3D graphics content to the screen

Android Runtime

Android Runtime consists of Dalvik Virtual machine and Core Java libraries.

Dalvik Virtual Machine

It is a type of JVM used in android devices to run apps and is optimized for low processing power and
low memory environments. Unlike the JVM, the Dalvik Virtual Machine doesn’t run .class files, instead
it runs .dex files. .dex files are built from .class file at the time of compilation and provides hifger
efficiency in low resource environments. The Dalvik VM allows multiple instance of Virtual machine to
be created simultaneously providing security, isolation, memory management and threading support. It is
developed by Dan Bornstein of Google.

Core Java Libraries
These are different from Java SE and Java ME libraries. However these libraries provides most of the
functionalities defined in the Java SE libraries.




                    @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
4


Application Framework

These are the blocks that our applications directly interacts with. These programs manage the basic
functions of phone like resource management, voice call management etc. As a developer, you just
consider these are some basic tools with which we are building our applications.

Important blocks of Application framework are:

Activity Manager: Manages the activity life cycle of applications

Content Providers: Manage the data sharing between applications

Telephony Manager: Manages all voice calls. We use telephony manager if we want to access voice
calls in our application.

Location Manager: Location management, using GPS or cell tower

Resource Manager: Manage the various types of resources we use in our Application

Applications

Applications are the top layer in the Android architecture and this is where our applications are gonna fit.
Several standard applications comes pre-installed with every device, such as:

       SMS client app
       Dialer
       Web browser
       Contact manager

As a developer we are able to write an app which replace any existing system app. That is, you are not
limited in accessing any particular feature. You are practically limitless and can whatever you want to do
with the android (as long as the users of your app permits it). Thus Android is opening endless
opportunities to the developer.




                    @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
5



Session 2
Setting android environment

  Please refer the PDF
  Day_1_Set up Andoid Environment.pdf


Create project using Eclipse




                  @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
6




@COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
7



Session 3
Understanding an android application structure




src:in the src we keep all the java file
res: we dump the resources into the res folder where we keep all the images , layouts and more on
drawable: here we keep all the images required for an application
layout: in the layout folder we keep all the layout related xml files
value : in the value folder we add the parameters such as String , dimen , styles

Understanding the LDPI , MDPI , HDPI




      small screens are at least 426dp x 320dp
      normal screens are at least 470dp x 320dp
      large screens are at least 640dp x 480dp
      xlarge screens are at least 960dp x 720dp



                   @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
8



Session 4
Introduction to android components

      Activities
      Services
      Content providers
      Broadcast receivers


                                                Activity

      Activity : In Android, an activity is represent a single screen.
      Most applications have multiple activities to represent different screens.
      Any user interface screen is called as an activity.

                                              Service
      A Service is a component which runs in the background, without interacting with the user.
      For example, a service might handle network transactions, play music, perform file I/O, or
       interact with a content provider, all from the background.

                                        Content Providers
      Content Providers are the only way to share data across Android applications. They store and
       retrieve data thus making it accessible to all.
      Android platform provides default implementations of content providers for data types like
       audio, video, images, contact information etc.

                                    Broadcast receivers
      A broadcast receiver is a component that responds to system-wide broadcast announcements.
       Many broadcasts originate from the system—
      For example, a broadcast announcing that the screen has turned off, the battery is low, or a
       picture was captured.




                   @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)

Contenu connexe

Tendances

Introduction to android
Introduction to androidIntroduction to android
Introduction to androidbantyder
 
Android apps development
Android apps developmentAndroid apps development
Android apps developmentRaman Pandey
 
Android Training in Chandigarh | Industrial Training in Android Apps Development
Android Training in Chandigarh | Industrial Training in Android Apps DevelopmentAndroid Training in Chandigarh | Industrial Training in Android Apps Development
Android Training in Chandigarh | Industrial Training in Android Apps DevelopmentBig Boxx Animation Academy
 
Marakana android-java developers
Marakana android-java developersMarakana android-java developers
Marakana android-java developersMarko Gargenta
 
Lecture 3 getting active through activities
Lecture 3 getting active through activities Lecture 3 getting active through activities
Lecture 3 getting active through activities Ahsanul Karim
 
Android应用开发简介
Android应用开发简介Android应用开发简介
Android应用开发简介easychen
 
Android development basic _ZuoSyuanWang
Android development basic _ZuoSyuanWangAndroid development basic _ZuoSyuanWang
Android development basic _ZuoSyuanWang佐軒 王
 
Synapseindia android application development tutorial
Synapseindia android application development tutorialSynapseindia android application development tutorial
Synapseindia android application development tutorialSynapseindiappsdevelopment
 
Synapseindia android apps development tutorial
Synapseindia android apps  development tutorialSynapseindia android apps  development tutorial
Synapseindia android apps development tutorialSynapseindiappsdevelopment
 
Marakana Android User Interface
Marakana Android User InterfaceMarakana Android User Interface
Marakana Android User InterfaceMarko Gargenta
 
Android studio
Android studioAndroid studio
Android studioAndri Yabu
 
Development Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDKDevelopment Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDKTubagus Anwar
 
Introduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi Mumbai
Introduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi MumbaiIntroduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi Mumbai
Introduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi MumbaiItvedant
 

Tendances (19)

Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android apps development
Android apps developmentAndroid apps development
Android apps development
 
Android Training in Chandigarh | Industrial Training in Android Apps Development
Android Training in Chandigarh | Industrial Training in Android Apps DevelopmentAndroid Training in Chandigarh | Industrial Training in Android Apps Development
Android Training in Chandigarh | Industrial Training in Android Apps Development
 
Marakana android-java developers
Marakana android-java developersMarakana android-java developers
Marakana android-java developers
 
Lecture 3 getting active through activities
Lecture 3 getting active through activities Lecture 3 getting active through activities
Lecture 3 getting active through activities
 
Android Components
Android ComponentsAndroid Components
Android Components
 
Android应用开发简介
Android应用开发简介Android应用开发简介
Android应用开发简介
 
Android development basic _ZuoSyuanWang
Android development basic _ZuoSyuanWangAndroid development basic _ZuoSyuanWang
Android development basic _ZuoSyuanWang
 
Unit2
Unit2Unit2
Unit2
 
Android components
Android componentsAndroid components
Android components
 
Synapseindia android application development tutorial
Synapseindia android application development tutorialSynapseindia android application development tutorial
Synapseindia android application development tutorial
 
Synapseindia android apps development tutorial
Synapseindia android apps  development tutorialSynapseindia android apps  development tutorial
Synapseindia android apps development tutorial
 
Android UI Fundamentals part 1
Android UI Fundamentals part 1Android UI Fundamentals part 1
Android UI Fundamentals part 1
 
K.cie.1 q2012.v.1.0
K.cie.1 q2012.v.1.0K.cie.1 q2012.v.1.0
K.cie.1 q2012.v.1.0
 
Marakana Android User Interface
Marakana Android User InterfaceMarakana Android User Interface
Marakana Android User Interface
 
Android studio
Android studioAndroid studio
Android studio
 
Development Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDKDevelopment Playbook Application With Adobe AIR 2.5 and QNX SDK
Development Playbook Application With Adobe AIR 2.5 and QNX SDK
 
Introduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi Mumbai
Introduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi MumbaiIntroduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi Mumbai
Introduction to Android (in-short) - Itvedant, Thane | Mumbai | Navi Mumbai
 
Android session 2
Android session 2Android session 2
Android session 2
 

Similaire à Android development training programme Day 1

Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Google android white paper
Google android white paperGoogle android white paper
Google android white paperSravan Reddy
 
Android introduction
Android introductionAndroid introduction
Android introductionmcanotes
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1Kainda Kiniel Daka
 
Android technology
Android technologyAndroid technology
Android technologyDhruv Modh
 
Java talks. Android intoduction for develompment
Java talks. Android intoduction for develompmentJava talks. Android intoduction for develompment
Java talks. Android intoduction for develompmentAlexei Miliutin
 
Android and its feature
Android and its featureAndroid and its feature
Android and its featureShubham Kumar
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application DevelopmentRamesh Prasad
 
Evolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s VersionsEvolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s Versionsijtsrd
 
Slides bootcamp21
Slides bootcamp21Slides bootcamp21
Slides bootcamp21dxsaki
 
Android : Architecture & Components
Android : Architecture & ComponentsAndroid : Architecture & Components
Android : Architecture & ComponentsAkash Bisariya
 
Android Development - Session 2
Android Development - Session 2Android Development - Session 2
Android Development - Session 2Mohammad Shaker
 
Android Development - Session 1
Android Development - Session 1Android Development - Session 1
Android Development - Session 1Mohammad Shaker
 

Similaire à Android development training programme Day 1 (20)

Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android platform
Android platform Android platform
Android platform
 
Google android white paper
Google android white paperGoogle android white paper
Google android white paper
 
Cc4201519521
Cc4201519521Cc4201519521
Cc4201519521
 
Android Basic Concept
Android Basic Concept Android Basic Concept
Android Basic Concept
 
Android introduction
Android introductionAndroid introduction
Android introduction
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Android technology
Android technologyAndroid technology
Android technology
 
Java talks. Android intoduction for develompment
Java talks. Android intoduction for develompmentJava talks. Android intoduction for develompment
Java talks. Android intoduction for develompment
 
Android and its feature
Android and its featureAndroid and its feature
Android and its feature
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
rakesh
rakeshrakesh
rakesh
 
Android
AndroidAndroid
Android
 
Evolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s VersionsEvolution of Android Operating System and it’s Versions
Evolution of Android Operating System and it’s Versions
 
Slides bootcamp21
Slides bootcamp21Slides bootcamp21
Slides bootcamp21
 
Android : Architecture & Components
Android : Architecture & ComponentsAndroid : Architecture & Components
Android : Architecture & Components
 
Android Introduction by Kajal
Android Introduction by KajalAndroid Introduction by Kajal
Android Introduction by Kajal
 
Android Development - Session 2
Android Development - Session 2Android Development - Session 2
Android Development - Session 2
 
Android Development - Session 1
Android Development - Session 1Android Development - Session 1
Android Development - Session 1
 

Dernier

Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsNbelano25
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxPooja Bhuva
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024Elizabeth Walsh
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfDr Vijay Vishwakarma
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxCeline George
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxPooja Bhuva
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Jisc
 

Dernier (20)

Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf arts
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 

Android development training programme Day 1

  • 1. 1 Day 1 Session 1 What is Android?  Android is a software stack for mobile devices that includes an operating system, middleware and key applications.  Android gives you a world-class platform for creating apps and games for Android users Android version  Android 1.0  Android 1.1  Cupcake 1.5  Donut 1.6  Éclair 2.0/2.1  Froyo 2.2.x  Gingerbread 2.3.x  Honeycomb 3.x  Ice Cream Sandwich 4.0.x  Jelly Bean 4.1 Being an Android user you may know how the basic functions such as making a call, sending a text message, changing the system settings, install or uninstall apps etc. Well! All Android users know these, but not enough for a developer. Then what else details are a developer required to know about Android, I’ll explain. To be a developer, you should know all the key concepts of Android. That is, you should know all the nuts and bolts of Android OS. @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
  • 2. 2 Android Architecture The above figure shows the diagram of Android Architecture. The Android OS can be referred to as a software stack of different layers, where each layer is a group of sveral program components. Together it includes operating system, middleware and important applications. Each layer in the architecture provides different services to the layer just above it. We will examine the features of each layer in detail. Linux Kernel The basic layer is the Linux kernel. The whole Android OS is built on top of the Linux 2.6 Kernel with some further architectural changes made by Google. It is this Linux that interacts with the hardware and contains all the essential hardware drivers. Drivers are programs that control and communicate with the hardware. For example, consider the Bluetooth function. All devices has a Bluetooth hardware in it. Therefore the kernel must include a Bluetooth driver to communicate with the Bluetooth hardware. The Linux kernel also acts as an abstraction layer between the hardware and other software layers. Android uses the Linux for all its core functionality such as Memory management, process management, networking, security settings etc. As the Android is built on a most popular and proven foundation, it made the porting of Android to variety of hardware, a relatively painless task. @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
  • 3. 3 Libraries The next layer is the Android’s native libraries. It is this layer that enables the device to handle different types of data. These libraries are written in c or c++ language and are specific for a particular hardware. Some of the important native libraries include the following: Surface Manager: It is used for compositing window manager with off-screen buffering. Off-screen buffering means you cant directly draw into the screen, but your drawings go to the off-screen buffer. There it is combined with other drawings and form the final screen the user will see. This off screen buffer is the reason behind the transparency of windows. Media framework: Media framework provides different media codecs allowing the recording and playback of different media formats SQLite: SQLite is the database engine used in android for data storage purposes WebKit: It is the browser engine used to display HTML content OpenGL: Used to render 2D or 3D graphics content to the screen Android Runtime Android Runtime consists of Dalvik Virtual machine and Core Java libraries. Dalvik Virtual Machine It is a type of JVM used in android devices to run apps and is optimized for low processing power and low memory environments. Unlike the JVM, the Dalvik Virtual Machine doesn’t run .class files, instead it runs .dex files. .dex files are built from .class file at the time of compilation and provides hifger efficiency in low resource environments. The Dalvik VM allows multiple instance of Virtual machine to be created simultaneously providing security, isolation, memory management and threading support. It is developed by Dan Bornstein of Google. Core Java Libraries These are different from Java SE and Java ME libraries. However these libraries provides most of the functionalities defined in the Java SE libraries. @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
  • 4. 4 Application Framework These are the blocks that our applications directly interacts with. These programs manage the basic functions of phone like resource management, voice call management etc. As a developer, you just consider these are some basic tools with which we are building our applications. Important blocks of Application framework are: Activity Manager: Manages the activity life cycle of applications Content Providers: Manage the data sharing between applications Telephony Manager: Manages all voice calls. We use telephony manager if we want to access voice calls in our application. Location Manager: Location management, using GPS or cell tower Resource Manager: Manage the various types of resources we use in our Application Applications Applications are the top layer in the Android architecture and this is where our applications are gonna fit. Several standard applications comes pre-installed with every device, such as:  SMS client app  Dialer  Web browser  Contact manager As a developer we are able to write an app which replace any existing system app. That is, you are not limited in accessing any particular feature. You are practically limitless and can whatever you want to do with the android (as long as the users of your app permits it). Thus Android is opening endless opportunities to the developer. @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
  • 5. 5 Session 2 Setting android environment Please refer the PDF Day_1_Set up Andoid Environment.pdf Create project using Eclipse @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
  • 6. 6 @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
  • 7. 7 Session 3 Understanding an android application structure src:in the src we keep all the java file res: we dump the resources into the res folder where we keep all the images , layouts and more on drawable: here we keep all the images required for an application layout: in the layout folder we keep all the layout related xml files value : in the value folder we add the parameters such as String , dimen , styles Understanding the LDPI , MDPI , HDPI  small screens are at least 426dp x 320dp  normal screens are at least 470dp x 320dp  large screens are at least 640dp x 480dp  xlarge screens are at least 960dp x 720dp @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)
  • 8. 8 Session 4 Introduction to android components  Activities  Services  Content providers  Broadcast receivers Activity  Activity : In Android, an activity is represent a single screen.  Most applications have multiple activities to represent different screens.  Any user interface screen is called as an activity. Service  A Service is a component which runs in the background, without interacting with the user.  For example, a service might handle network transactions, play music, perform file I/O, or interact with a content provider, all from the background. Content Providers  Content Providers are the only way to share data across Android applications. They store and retrieve data thus making it accessible to all.  Android platform provides default implementations of content providers for data types like audio, video, images, contact information etc. Broadcast receivers  A broadcast receiver is a component that responds to system-wide broadcast announcements. Many broadcasts originate from the system—  For example, a broadcast announcing that the screen has turned off, the battery is low, or a picture was captured. @COPYRIGHTS BY Dhiraj P. karalkar (Karalkar.dhiraj@gmail.com)