SlideShare une entreprise Scribd logo
1  sur  31
Android Development Workshop Part - 1
Ritesh Ambastha
Rajnikant Joshi
                            12th March
What is Android?
• Android is a mobile phone
  operating system developed by
  Google.

• Android is unique because
  Google is actively developing
  the platform by giving it away
  for     free   to     hardware
  manufacturers and phone
  carriers who want to use
  Android on their devices.
Open Handset Alliance
(OHA)
  • Google formed a group of
    hardware,     software,      and
    telecommunication companies
    called the Open Handset Alliance
    with the goal of contributing to
    Android development.

  • Most members also have the
    goal of making money from
    Android, either by selling phones,
    phone service, or mobile
    applications.
SDK and Android
Market Place
       • Anyone can download the SDK (software
         development kit) and write applications for
         Android phones. Google doesn't take part of
         the profits.

       • These apps can be downloaded from
         the Android Market Place. If the app costs
         money, you pay for it using Google Checkout.
Google Services
 • Because     Google       developed
   Android, it comes with a lot of
   Google services installed right out
   of the box.

 • Gmail, Google Calendar, and
   Google Web search are all pre-
   installed, and Google is also the
   default Web page for the Web
   browser.
Introduction to Android
Platform
   • Android is an open software platform for mobile development.
     It’s intended to be a complete stack that includes everything
     from the Operating System through middleware up through
     applications.
Android Architecture
• If I'm going to talk about architecture, we need to start with a
  diagram covered with a lot of little boxes.
Linux Kernel



• The architecture is based on the Linux 2.6 kernel. Android
  use Linux kernel as its hardware abstraction layer.
• The reason they're using Linux is because it provides a
  proven driver model in a lot of cases existing drivers.
• It also provides memory management, process
  management, a security model, and networking,
  a lot of core operating system infrastructures that are
  robust and have been proven over time.
Native Libraries



• The next level up is the native libraries.
  Everything that you see here in green is
  written in C and C++.
• It's at this level where a lot of the core power
  of the Android platform comes from.
Native Libraries:
   Surface Manager



• The surface manager is responsible for composing different
  drawing surfaces onto the screen.
• So it's the surface manager that's responsible for taking
  different windows that are owned by different applications
  that are running in different processes and all drawing at
  different times and making sure the pixels end up on the
  screen when they're supposed to.
Native Libraries:
OpenGL|ES and SGL



• OpenGL/ES is a 3D library.
• They have a software implementation that is hardware
  acceleratable if the device has a 3D chip on it.
• The SGL graphics are for 2D graphics and that is what most of the
  application drawing is based on.
• One interesting thing about the Android graphics platform is that
  you can combine 3D and 2D graphics in the same application.
Native Libraries:
 Media Framework




• The Media Framework was provided by PacketVideo, one of
  the members of the open handset alliance and that contains
  the entire codex that make up the core of the media
  experiences.
• So, in there you'll find IMPEG 4, H.264, MP3, AAC, all the
  audio and video codex you need to build a rich media
  experience.
Native Libraries:
 FreeType & SQLite



• FreeType
  • They use FreeType to render our fonts. FreeType is
    a free, high-quality and portable font engine.
• SQLite
  • They have an implementation of SQLite, it uses
    that as the core of most of its data storage.
Native Libraries:
WebKit




• They have WebKit which is the open source browser
  engine, that's what they're using as a core of
  Android’s browser.
• It's the same browser that's powering Safari from
  Apple and they’ve worked with that engine to make
  it render well on small screens and on mobile
  devices.
Android Run Time



• The Android Runtime was designed specifically for Android to meet
  the needs of running in an embedded environment where you have
  limited battery, limited memory, limited CPU.
• The DVM runs something called dex files, D-E-X. and these are
  bytecodes that are the results of converting at build time .Class and
  .JAR Files.
• So, these files when they are converted to .dex, become a much
  more efficient bytecode that can run very well on small processors.
  They use memory very efficiently.
Android Run Time



• The next level up from that is the Core Libraries.
• This is in blue, meaning that it's written in the Java
  programming language.
• And the core library contains all of the collection classes,
  utilities, IO, all the utilities and tools that you’ve come to
  expected to use.
Application Framework




 • This is all written in a Java programming language and the
   application framework is the toolkit that all applications use.
 • These applications include the ones that come with a phone
   like the home applications, or the phone application.
 • It includes applications written by Google, and it includes apps
   that will be written by you.
 • So, all apps use the same framework and the same APIs.
Application Framework



 • Activity Manager
   • The Activity manager is what manages the life cycle of the applications. It
     also maintains a common backstack so that application that is running in
     different processes can have a smoothly integrated navigation experience.
 • Package Manager
   • The package manager is what keeps track of which applications are
     installed on your device. So, if you download new applications over the air
     or otherwise install apps, it's the package manager that's responsible for
     keeping track of what you have and what the capabilities of each of your
     applications are.
Application Framework



• Window Manager
  • The window manager manages Windows. It's mostly a java
    programming language abstraction on top of lower level services that
    are provided by the surface manager.
• Telephony Manager
  • The telephony manager contains the APIs that we use to build the
    phone application that's central to the phone experience.
Application Framework




• Content Providers
  • Content providers are a unique piece of the Android platform. That's
    the framework that allows applications to share their data with other
    applications.
• The View system
  • View System contains things like buttons and lists, all the building
    blocks of the UI. It also handles things like event dispatching, layout
    drawing, .
Application Framework




• The resource manager is what they use to store local iStrings,
  bitmaps, layout file descriptions, all of the external parts of an
  application that aren't code.
• Location manager, notification manager and XMPP service
  are some APIs that I think will allow developers to create
  really innovative and exciting applications.
Applications




• And the final layer on top is Applications.
• This is where all the applications get written.
• It includes the home application, the contacts application, the
  browser, and your apps.
• And everything at this layer is, again, using the same app
  framework provided by the layers below.
Application
             Building Blocks
• Now, if you're going to write an app, the first step is to
  decompose it into the components that are supported by
  the Android platform.
                         • UI component typically corresponding to one
         Activity          screen.

                         • Responds to notification or status changes. Can
     Intent Receiver       wake up your process.


         Service         • Faceless task that runs in the background.


    Content Provider     • Enable applications to share data
Application
              Building Blocks

                            Activity

• An activity is essentially just a piece of UI typically corresponding to
  one screen.
• So if you think of something like the mail application, that would
  be decomposed into maybe three major activities, something that
  lists your mail, something that shows you what an individual
  message and a compose screen to put together an outgoing email.
Application
             Building Blocks
              Intent Receiver

• An intent receiver is a way for which your
  application to register some code that won't
  be running until it's triggered by some
  external event.
• And the set of external events that triggers
  your code is open and extensible.
Application
               Building Blocks
                      Service

• A service is a task that doesn't have any UI, that's
  long lived, that's running in the background.
• A good example is a music player. You may start
  playing music from an activity, from a piece of UI,
  but once the music is playing, you'd want it to
  keep playing even if you're navigating to other
  parts of the user experience.
Application
                    Building Blocks
                     Content Provider

• It is a component that allows you to share some of your data with
  other processes and other applications.
• Now, any application can store data in whatever may-way it makes
  sense for that application.
  • They can store it in the files.
  • They can store it in Android’s super light database, whatever makes
    sense.
Application Lifecycle
 • Applications run in their own processes
 • Processes are started and stopped as
   needed to run an application's components
 • Processes may be killed to reclaim resources
  • In android, every application runs in its own process. There's a lot of
    benefits to this. It gives you security, protected memory. It means
    that an application is doing something CPU intensive, won't block
    other critical activities, like, answering a phone.

  • So all applications are running in their own processes and the
    Android System itself is responsible for starting these proecesses and
    shutting them down as necessary to reclaim resources.
Application Lifecycle
Installations
       &
Configuration

            Next PPT…

Contenu connexe

Tendances

Google I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and JetpackGoogle I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and JetpackSunita Singh
 
Android study jam session 1
Android study jam session 1Android study jam session 1
Android study jam session 1DSCIIITLucknow
 
Android Study Jams Session 01
Android Study Jams Session 01Android Study Jams Session 01
Android Study Jams Session 01DSC BIT Mesra
 
Vit bhopal android study jams 2.0 session 1
Vit bhopal android study jams 2.0 session 1Vit bhopal android study jams 2.0 session 1
Vit bhopal android study jams 2.0 session 1ishik1
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorialilias ahmed
 
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...Jason Conger
 
Android Study Jams - Induction
Android Study Jams - InductionAndroid Study Jams - Induction
Android Study Jams - InductionGDSCAISSMSIOIT
 
Android study jams
Android study jamsAndroid study jams
Android study jamsGDSCIIITR
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android StudioSuyash Srijan
 
Android Study Jam - Info Session
Android Study Jam - Info SessionAndroid Study Jam - Info Session
Android Study Jam - Info SessionAITIKDANDAPAT
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorialmaster760
 
Experience The Best Android Programming Training Here | LW India
Experience The Best Android Programming Training Here | LW IndiaExperience The Best Android Programming Training Here | LW India
Experience The Best Android Programming Training Here | LW IndiaVishakhaTalmale
 
Android Studio Overview
Android Studio OverviewAndroid Studio Overview
Android Studio OverviewSalim Hosen
 
Android development
Android developmentAndroid development
Android developmentRaynax668
 
Android Programming made easy
Android Programming made easyAndroid Programming made easy
Android Programming made easyLars Vogel
 
Android Study Jam 2021 Session 4 slides
Android Study Jam 2021 Session 4 slidesAndroid Study Jam 2021 Session 4 slides
Android Study Jam 2021 Session 4 slidesBoston Android
 
Android development training
Android development trainingAndroid development training
Android development trainingmaheswarimahi18
 

Tendances (20)

Google I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and JetpackGoogle I/O 2019 - what's new in Android Q and Jetpack
Google I/O 2019 - what's new in Android Q and Jetpack
 
Android study jam session 1
Android study jam session 1Android study jam session 1
Android study jam session 1
 
Android Study Jams Session 01
Android Study Jams Session 01Android Study Jams Session 01
Android Study Jams Session 01
 
Vit bhopal android study jams 2.0 session 1
Vit bhopal android study jams 2.0 session 1Vit bhopal android study jams 2.0 session 1
Vit bhopal android study jams 2.0 session 1
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorial
 
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
Building your Own Mobile Enterprise Application: It’s Not as Hard as You Migh...
 
Android Study Jams - Induction
Android Study Jams - InductionAndroid Study Jams - Induction
Android Study Jams - Induction
 
Android study jams
Android study jamsAndroid study jams
Android study jams
 
Intro to Android Programming
Intro to Android ProgrammingIntro to Android Programming
Intro to Android Programming
 
Introduction to Android and Android Studio
Introduction to Android and Android StudioIntroduction to Android and Android Studio
Introduction to Android and Android Studio
 
Android Study Jam - Info Session
Android Study Jam - Info SessionAndroid Study Jam - Info Session
Android Study Jam - Info Session
 
Android game ppt
Android game pptAndroid game ppt
Android game ppt
 
Android tutorial
Android tutorialAndroid tutorial
Android tutorial
 
Experience The Best Android Programming Training Here | LW India
Experience The Best Android Programming Training Here | LW IndiaExperience The Best Android Programming Training Here | LW India
Experience The Best Android Programming Training Here | LW India
 
Android Studio Overview
Android Studio OverviewAndroid Studio Overview
Android Studio Overview
 
Android development
Android developmentAndroid development
Android development
 
Android Programming made easy
Android Programming made easyAndroid Programming made easy
Android Programming made easy
 
Android Study Jam 2021 Session 4 slides
Android Study Jam 2021 Session 4 slidesAndroid Study Jam 2021 Session 4 slides
Android Study Jam 2021 Session 4 slides
 
Android development training
Android development trainingAndroid development training
Android development training
 
Android overview
Android overviewAndroid overview
Android overview
 

En vedette

Catégorisation automatisée de contenus documentaires : la ...
Catégorisation automatisée de contenus documentaires : la ...Catégorisation automatisée de contenus documentaires : la ...
Catégorisation automatisée de contenus documentaires : la ...butest
 
Introduction to Android by Demian Neidetcher
Introduction to Android by Demian NeidetcherIntroduction to Android by Demian Neidetcher
Introduction to Android by Demian NeidetcherMatthew McCullough
 
Introduction of Android Camera1
Introduction of Android Camera1Introduction of Android Camera1
Introduction of Android Camera1Booch Lin
 
Sistemas operativos para dispositivos móviles
Sistemas operativos para dispositivos móvilesSistemas operativos para dispositivos móviles
Sistemas operativos para dispositivos móvilesKoldo Parra
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating systemSalma Begum
 
Presentation on mobile phones
Presentation on mobile phonesPresentation on mobile phones
Presentation on mobile phonessirtwinkles
 

En vedette (12)

Catégorisation automatisée de contenus documentaires : la ...
Catégorisation automatisée de contenus documentaires : la ...Catégorisation automatisée de contenus documentaires : la ...
Catégorisation automatisée de contenus documentaires : la ...
 
Introduction to Android by Demian Neidetcher
Introduction to Android by Demian NeidetcherIntroduction to Android by Demian Neidetcher
Introduction to Android by Demian Neidetcher
 
Introduction of Android Camera1
Introduction of Android Camera1Introduction of Android Camera1
Introduction of Android Camera1
 
Working with Android TV - English
Working with Android TV - EnglishWorking with Android TV - English
Working with Android TV - English
 
Sistemas operativos para dispositivos móviles
Sistemas operativos para dispositivos móvilesSistemas operativos para dispositivos móviles
Sistemas operativos para dispositivos móviles
 
Tv ppt
Tv pptTv ppt
Tv ppt
 
Television ppt
Television pptTelevision ppt
Television ppt
 
Mobile handests ppt
Mobile handests pptMobile handests ppt
Mobile handests ppt
 
Television
TelevisionTelevision
Television
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating system
 
Presentation on mobile phones
Presentation on mobile phonesPresentation on mobile phones
Presentation on mobile phones
 
Mobile ppt
Mobile pptMobile ppt
Mobile ppt
 

Similaire à Android Workshop Part 1

Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA NITIN GUPTA
 
Android Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfAndroid Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfNomanKhan869872
 
Android App Developement
Android App DevelopementAndroid App Developement
Android App DevelopementAayush Gupta
 
android development training in mumbai
android development training in mumbaiandroid development training in mumbai
android development training in mumbaifaizrashid1995
 
Mobile Application Development powerpoint
Mobile Application Development powerpointMobile Application Development powerpoint
Mobile Application Development powerpointJohnLagman3
 
Android Technology
Android TechnologyAndroid Technology
Android TechnologyR
 
Android Security Humla Part 1
Android Security Humla Part 1Android Security Humla Part 1
Android Security Humla Part 1Nikhil Kulkarni
 
Android 130923124440-phpapp01
Android 130923124440-phpapp01Android 130923124440-phpapp01
Android 130923124440-phpapp01rajesh kumar
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions newJoe Jacob
 
Android Seminar || history || versions||application developement
Android Seminar || history || versions||application developement Android Seminar || history || versions||application developement
Android Seminar || history || versions||application developement Shubham Pahune
 
Android fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersAndroid fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersBoom Shukla
 

Similaire à Android Workshop Part 1 (20)

Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA Android Application Development Training by NITIN GUPTA
Android Application Development Training by NITIN GUPTA
 
Android Applications
Android ApplicationsAndroid Applications
Android Applications
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android ppt
Android ppt Android ppt
Android ppt
 
Android Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfAndroid Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdf
 
Android
AndroidAndroid
Android
 
Android App Developement
Android App DevelopementAndroid App Developement
Android App Developement
 
android development training in mumbai
android development training in mumbaiandroid development training in mumbai
android development training in mumbai
 
Mobile Application Development powerpoint
Mobile Application Development powerpointMobile Application Development powerpoint
Mobile Application Development powerpoint
 
document
documentdocument
document
 
Android Technology
Android TechnologyAndroid Technology
Android Technology
 
Android based os
Android based osAndroid based os
Android based os
 
Android technology
Android technology Android technology
Android technology
 
Android OS
Android OSAndroid OS
Android OS
 
Android Security Humla Part 1
Android Security Humla Part 1Android Security Humla Part 1
Android Security Humla Part 1
 
Android 130923124440-phpapp01
Android 130923124440-phpapp01Android 130923124440-phpapp01
Android 130923124440-phpapp01
 
Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions new
 
Android Seminar || history || versions||application developement
Android Seminar || history || versions||application developement Android Seminar || history || versions||application developement
Android Seminar || history || versions||application developement
 
Android fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersAndroid fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginners
 
Android Apps
Android AppsAndroid Apps
Android Apps
 

Plus de NAILBITER

Social Media Strategies
Social Media StrategiesSocial Media Strategies
Social Media StrategiesNAILBITER
 
jQuery for Beginners
jQuery for Beginners jQuery for Beginners
jQuery for Beginners NAILBITER
 
GBGahmedabad - Create your Business Website
GBGahmedabad - Create your Business WebsiteGBGahmedabad - Create your Business Website
GBGahmedabad - Create your Business WebsiteNAILBITER
 
Mapathon 2013 - Google Maps Javascript API
Mapathon 2013 - Google Maps Javascript APIMapathon 2013 - Google Maps Javascript API
Mapathon 2013 - Google Maps Javascript APINAILBITER
 
Cloud Workshop - Presentation
Cloud Workshop - PresentationCloud Workshop - Presentation
Cloud Workshop - PresentationNAILBITER
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud ComputingNAILBITER
 
iWillStudy.com - Light Pitch
iWillStudy.com - Light PitchiWillStudy.com - Light Pitch
iWillStudy.com - Light PitchNAILBITER
 
Cloud Summit Ahmedabad
Cloud Summit AhmedabadCloud Summit Ahmedabad
Cloud Summit AhmedabadNAILBITER
 
Android Fundamentals & Figures of 2012
Android Fundamentals & Figures of 2012Android Fundamentals & Figures of 2012
Android Fundamentals & Figures of 2012NAILBITER
 
The iPhone development on windows
The iPhone development on windowsThe iPhone development on windows
The iPhone development on windowsNAILBITER
 
Ambastha EduTech Pvt Ltd
Ambastha EduTech Pvt LtdAmbastha EduTech Pvt Ltd
Ambastha EduTech Pvt LtdNAILBITER
 
Develop open source search engine
Develop open source search engineDevelop open source search engine
Develop open source search engineNAILBITER
 
Location based solutions maps & your location
Location based solutions   maps & your locationLocation based solutions   maps & your location
Location based solutions maps & your locationNAILBITER
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1NAILBITER
 
Android Workshop - Session 2
Android Workshop - Session 2Android Workshop - Session 2
Android Workshop - Session 2NAILBITER
 
Android Workshop Session 1
Android Workshop Session 1Android Workshop Session 1
Android Workshop Session 1NAILBITER
 
Linux Seminar for Beginners
Linux Seminar for BeginnersLinux Seminar for Beginners
Linux Seminar for BeginnersNAILBITER
 
Linux advanced concepts - Part 2
Linux advanced concepts - Part 2Linux advanced concepts - Part 2
Linux advanced concepts - Part 2NAILBITER
 

Plus de NAILBITER (20)

Social Media Strategies
Social Media StrategiesSocial Media Strategies
Social Media Strategies
 
jQuery for Beginners
jQuery for Beginners jQuery for Beginners
jQuery for Beginners
 
GBGahmedabad - Create your Business Website
GBGahmedabad - Create your Business WebsiteGBGahmedabad - Create your Business Website
GBGahmedabad - Create your Business Website
 
Mapathon 2013 - Google Maps Javascript API
Mapathon 2013 - Google Maps Javascript APIMapathon 2013 - Google Maps Javascript API
Mapathon 2013 - Google Maps Javascript API
 
Cloud Workshop - Presentation
Cloud Workshop - PresentationCloud Workshop - Presentation
Cloud Workshop - Presentation
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
iWillStudy.com - Light Pitch
iWillStudy.com - Light PitchiWillStudy.com - Light Pitch
iWillStudy.com - Light Pitch
 
Cloud Summit Ahmedabad
Cloud Summit AhmedabadCloud Summit Ahmedabad
Cloud Summit Ahmedabad
 
Android Fundamentals & Figures of 2012
Android Fundamentals & Figures of 2012Android Fundamentals & Figures of 2012
Android Fundamentals & Figures of 2012
 
The iPhone development on windows
The iPhone development on windowsThe iPhone development on windows
The iPhone development on windows
 
Ambastha EduTech Pvt Ltd
Ambastha EduTech Pvt LtdAmbastha EduTech Pvt Ltd
Ambastha EduTech Pvt Ltd
 
Branding
BrandingBranding
Branding
 
Advertising
AdvertisingAdvertising
Advertising
 
Develop open source search engine
Develop open source search engineDevelop open source search engine
Develop open source search engine
 
Location based solutions maps & your location
Location based solutions   maps & your locationLocation based solutions   maps & your location
Location based solutions maps & your location
 
Html5 workshop part 1
Html5 workshop part 1Html5 workshop part 1
Html5 workshop part 1
 
Android Workshop - Session 2
Android Workshop - Session 2Android Workshop - Session 2
Android Workshop - Session 2
 
Android Workshop Session 1
Android Workshop Session 1Android Workshop Session 1
Android Workshop Session 1
 
Linux Seminar for Beginners
Linux Seminar for BeginnersLinux Seminar for Beginners
Linux Seminar for Beginners
 
Linux advanced concepts - Part 2
Linux advanced concepts - Part 2Linux advanced concepts - Part 2
Linux advanced concepts - Part 2
 

Dernier

FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinojohnmickonozaleda
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxPoojaSen20
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 

Dernier (20)

FILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipinoFILIPINO PSYCHology sikolohiyang pilipino
FILIPINO PSYCHology sikolohiyang pilipino
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptxCulture Uniformity or Diversity IN SOCIOLOGY.pptx
Culture Uniformity or Diversity IN SOCIOLOGY.pptx
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 

Android Workshop Part 1

  • 1. Android Development Workshop Part - 1 Ritesh Ambastha Rajnikant Joshi 12th March
  • 2. What is Android? • Android is a mobile phone operating system developed by Google. • Android is unique because Google is actively developing the platform by giving it away for free to hardware manufacturers and phone carriers who want to use Android on their devices.
  • 3. Open Handset Alliance (OHA) • Google formed a group of hardware, software, and telecommunication companies called the Open Handset Alliance with the goal of contributing to Android development. • Most members also have the goal of making money from Android, either by selling phones, phone service, or mobile applications.
  • 4. SDK and Android Market Place • Anyone can download the SDK (software development kit) and write applications for Android phones. Google doesn't take part of the profits. • These apps can be downloaded from the Android Market Place. If the app costs money, you pay for it using Google Checkout.
  • 5. Google Services • Because Google developed Android, it comes with a lot of Google services installed right out of the box. • Gmail, Google Calendar, and Google Web search are all pre- installed, and Google is also the default Web page for the Web browser.
  • 6. Introduction to Android Platform • Android is an open software platform for mobile development. It’s intended to be a complete stack that includes everything from the Operating System through middleware up through applications.
  • 7. Android Architecture • If I'm going to talk about architecture, we need to start with a diagram covered with a lot of little boxes.
  • 8. Linux Kernel • The architecture is based on the Linux 2.6 kernel. Android use Linux kernel as its hardware abstraction layer. • The reason they're using Linux is because it provides a proven driver model in a lot of cases existing drivers. • It also provides memory management, process management, a security model, and networking, a lot of core operating system infrastructures that are robust and have been proven over time.
  • 9. Native Libraries • The next level up is the native libraries. Everything that you see here in green is written in C and C++. • It's at this level where a lot of the core power of the Android platform comes from.
  • 10. Native Libraries: Surface Manager • The surface manager is responsible for composing different drawing surfaces onto the screen. • So it's the surface manager that's responsible for taking different windows that are owned by different applications that are running in different processes and all drawing at different times and making sure the pixels end up on the screen when they're supposed to.
  • 11. Native Libraries: OpenGL|ES and SGL • OpenGL/ES is a 3D library. • They have a software implementation that is hardware acceleratable if the device has a 3D chip on it. • The SGL graphics are for 2D graphics and that is what most of the application drawing is based on. • One interesting thing about the Android graphics platform is that you can combine 3D and 2D graphics in the same application.
  • 12. Native Libraries: Media Framework • The Media Framework was provided by PacketVideo, one of the members of the open handset alliance and that contains the entire codex that make up the core of the media experiences. • So, in there you'll find IMPEG 4, H.264, MP3, AAC, all the audio and video codex you need to build a rich media experience.
  • 13. Native Libraries: FreeType & SQLite • FreeType • They use FreeType to render our fonts. FreeType is a free, high-quality and portable font engine. • SQLite • They have an implementation of SQLite, it uses that as the core of most of its data storage.
  • 14. Native Libraries: WebKit • They have WebKit which is the open source browser engine, that's what they're using as a core of Android’s browser. • It's the same browser that's powering Safari from Apple and they’ve worked with that engine to make it render well on small screens and on mobile devices.
  • 15. Android Run Time • The Android Runtime was designed specifically for Android to meet the needs of running in an embedded environment where you have limited battery, limited memory, limited CPU. • The DVM runs something called dex files, D-E-X. and these are bytecodes that are the results of converting at build time .Class and .JAR Files. • So, these files when they are converted to .dex, become a much more efficient bytecode that can run very well on small processors. They use memory very efficiently.
  • 16. Android Run Time • The next level up from that is the Core Libraries. • This is in blue, meaning that it's written in the Java programming language. • And the core library contains all of the collection classes, utilities, IO, all the utilities and tools that you’ve come to expected to use.
  • 17. Application Framework • This is all written in a Java programming language and the application framework is the toolkit that all applications use. • These applications include the ones that come with a phone like the home applications, or the phone application. • It includes applications written by Google, and it includes apps that will be written by you. • So, all apps use the same framework and the same APIs.
  • 18. Application Framework • Activity Manager • The Activity manager is what manages the life cycle of the applications. It also maintains a common backstack so that application that is running in different processes can have a smoothly integrated navigation experience. • Package Manager • The package manager is what keeps track of which applications are installed on your device. So, if you download new applications over the air or otherwise install apps, it's the package manager that's responsible for keeping track of what you have and what the capabilities of each of your applications are.
  • 19. Application Framework • Window Manager • The window manager manages Windows. It's mostly a java programming language abstraction on top of lower level services that are provided by the surface manager. • Telephony Manager • The telephony manager contains the APIs that we use to build the phone application that's central to the phone experience.
  • 20. Application Framework • Content Providers • Content providers are a unique piece of the Android platform. That's the framework that allows applications to share their data with other applications. • The View system • View System contains things like buttons and lists, all the building blocks of the UI. It also handles things like event dispatching, layout drawing, .
  • 21. Application Framework • The resource manager is what they use to store local iStrings, bitmaps, layout file descriptions, all of the external parts of an application that aren't code. • Location manager, notification manager and XMPP service are some APIs that I think will allow developers to create really innovative and exciting applications.
  • 22. Applications • And the final layer on top is Applications. • This is where all the applications get written. • It includes the home application, the contacts application, the browser, and your apps. • And everything at this layer is, again, using the same app framework provided by the layers below.
  • 23.
  • 24. Application Building Blocks • Now, if you're going to write an app, the first step is to decompose it into the components that are supported by the Android platform. • UI component typically corresponding to one Activity screen. • Responds to notification or status changes. Can Intent Receiver wake up your process. Service • Faceless task that runs in the background. Content Provider • Enable applications to share data
  • 25. Application Building Blocks Activity • An activity is essentially just a piece of UI typically corresponding to one screen. • So if you think of something like the mail application, that would be decomposed into maybe three major activities, something that lists your mail, something that shows you what an individual message and a compose screen to put together an outgoing email.
  • 26. Application Building Blocks Intent Receiver • An intent receiver is a way for which your application to register some code that won't be running until it's triggered by some external event. • And the set of external events that triggers your code is open and extensible.
  • 27. Application Building Blocks Service • A service is a task that doesn't have any UI, that's long lived, that's running in the background. • A good example is a music player. You may start playing music from an activity, from a piece of UI, but once the music is playing, you'd want it to keep playing even if you're navigating to other parts of the user experience.
  • 28. Application Building Blocks Content Provider • It is a component that allows you to share some of your data with other processes and other applications. • Now, any application can store data in whatever may-way it makes sense for that application. • They can store it in the files. • They can store it in Android’s super light database, whatever makes sense.
  • 29. Application Lifecycle • Applications run in their own processes • Processes are started and stopped as needed to run an application's components • Processes may be killed to reclaim resources • In android, every application runs in its own process. There's a lot of benefits to this. It gives you security, protected memory. It means that an application is doing something CPU intensive, won't block other critical activities, like, answering a phone. • So all applications are running in their own processes and the Android System itself is responsible for starting these proecesses and shutting them down as necessary to reclaim resources.
  • 31. Installations & Configuration Next PPT…