SlideShare uma empresa Scribd logo
1 de 39
Compiled by intellisense ITsys Pvt Ltd
Dr Kalpesh Parikh, Director
Compiled by intellisense ITsys Pvt Ltd
Android is a software stack for mobile devices that includes an operating
system, middleware and key applications
What is Android
Compiled by intellisense ITsys Pvt Ltd
Application framework enabling reuse and replacement of components
Dalvik virtual machine optimized for mobile devices
Integrated browser based on the open source WebKit engine
Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the
OpenGL ES 1.0 specification (hardware acceleration optional)
SQLite for structured data storage
Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC,
AMR, JPG, PNG, GIF)
GSM Telephony (hardware dependent)
Bluetooth, EDGE, 3G, and WiFi (hardware dependent)
Camera, GPS, compass, and accelerometer (hardware dependent)
Rich development environment including a device emulator, tools for debugging,
memory and performance profiling, and a plugin for the Eclipse IDE
Android Features
Compiled by intellisense ITsys Pvt Ltd
Android OS-Architecture
Compiled by intellisense ITsys Pvt Ltd
Android will ship with a set of core applications including an email client, SMS
program, calendar, maps, browser, contacts, and others. All applications are
written using the Java programming language.
Applications
Compiled by intellisense ITsys Pvt Ltd
By providing an open development platform, Android offers developers the ability to build
extremely rich and innovative applications. Developers are free to take advantage of the device
hardware, access location information, run background services, set alarms, add notifications to
the status bar, and much, much more.
Developers have full access to the same framework APIs used by the core applications. The
application architecture is designed to simplify the reuse of components; any application can
publish its capabilities and any other application may then make use of those capabilities
(subject to security constraints enforced by the framework). This same mechanism allows
components to be replaced by the user.
Underlying all applications is a set of services and systems, including:
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
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
Application Framework
Compiled by intellisense ITsys Pvt Ltd
System C library - a BSD-derived implementation of the standard C system library
(libc), tuned for embedded Linux-based devices
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
Surface Manager - manages access to the display subsystem and seamlessly
composites 2D and 3D graphic layers from multiple applications
LibWebCore - a modern web browser engine which powers both the Android
browser and an embeddable web view
SGL - 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
Core Libraries
Compiled by intellisense ITsys Pvt Ltd
•Android includes a set of core libraries that provides most of the functionality
available in the core libraries of the Java programming language.
•Every Android application runs in its own process, with its own instance of the Dalvik
virtual machine.
•Dalvik has been written so that a device can run multiple VMs efficiently.
•The Dalvik VM executes files in the Dalvik Executable (.dex) format which is
optimized for minimal memory footprint.
•The VM is register-based, and runs classes compiled by a Java language compiler
that have been transformed into the .dex format by the included "dx" tool.
•The Dalvik VM relies on the Linux kernel for underlying functionality such as
threading and low-level memory management.
•Linux Kernel
Android relies on Linux version 2.6 for core system services such as security,
memory management, process management, network stack, and driver model. The
kernel also acts as an abstraction layer between the hardware and the rest of the
software stack.
Android Runtime
Compiled by intellisense ITsys Pvt Ltd
http://developer.android.com/guide
/tutorials/hello-world.html
Process Life Cycle
Compiled by intellisense ITsys Pvt Ltd
BASIC Terminologies
.apk file
Android application package file.
.dex file
Compiled Android application code file.
Action
A description of something that an Intent sender wants done. An action is a string
value assigned to an Intent.
Activity
A single screen in an application, with supporting Java code, derived from the Activity
class. Most commonly, an activity is visibly represented by a full screen window that
can receive and handle UI events and perform complex tasks, because of the
Window it uses to render its window. Though an Activity is typically full screen, it can
also be floating or transparent.
adb
Android Debug Bridge
Compiled by intellisense ITsys Pvt Ltd
Application
An Android application consists of one or more activities, services, listeners, and
intent receivers.
Canvas
A drawing surface that handles compositing of the actual bits against a Bitmap or
Surface object.
Content Provider
A data-abstraction layer that you can use to safely expose your application's data
to other applications.
Dalvik
The Android platform's virtual machine. The Dalvik VM is an interpreter-only virtual
machine that executes files in the Dalvik Executable (.dex) format
DDMS
Dalvik Debug Monitor Service
Dialog
A floating window that that acts as a lightweight form.
BASIC Terminologies
Compiled by intellisense ITsys Pvt Ltd
Drawable
A compiled visual resource that can be used as a background, title, or other part
of the screen
Intent
An message object that you can use to launch or communicate with other
applications/activities asynchronously.
Intent Filter
A filter object that an application declares in its manifest file, to tell the system
what types of Intents each of its components is willing to accept and with what
criteria.
Broadcast Receiver
An application class that listens for Intents that are broadcast, rather than being
sent to a single target application/activity.
Layout Resource
An XML file that describes the layout of an Activity screen.
BASIC Terminologies
Compiled by intellisense ITsys Pvt Ltd
Manifest File
An XML file that each application must define, to describe the application's package
name, version, components (activities, intent filters, services), imported libraries,
and describes the various activities, and so on. See The AndroidManifest.xml File
for complete information.
OpenGL ES
Android provides OpenGL ES libraries that you can use for fast, complex 3D
images.
Resources
Nonprogrammatic application components that are external to the compiled
application code, but which can be loaded from application code using a well-
known reference format.
Service
An object of class Service that runs in the background (without any UI presence) to
perform various persistent actions, such as playing music or monitoring network
activity.
BASIC Terminologies
Compiled by intellisense ITsys Pvt Ltd
Surface
A Surface holds a Canvas object for drawing, and provides various helper
methods to draw layers and resize the surface.
SurfaceView
A View object that wraps a Surface for drawing, and exposes methods to specify
its size and format dynamically.
Theme
A set of properties (text size, background color, and so on) bundled together to
define various default display settings.
URIs in Android
Android uses URI strings as the basis for requesting data in a content provider
(such as to retrieve a list of contacts) and for requesting actions in an Intent
(such as opening a Web page in a browser).
View
A View is a base class for most layout components of an Activity or Dialog
screen (text boxes, windows, and so on).
BASIC Terminologies
Compiled by intellisense ITsys Pvt Ltd
Viewgroup
A container object that groups a set of child Views.
Widget :
View subclasses that render form elements and other UI components, such as
a text box or popup menu.
BASIC Terminologies
Compiled by intellisense ITsys Pvt Ltd
ANDROID Software Stack
Compiled by intellisense ITsys Pvt Ltd
ANDROID Programming Framework
Compiled by intellisense ITsys Pvt Ltd
Quick Start
The steps below provide an overview of how to get started with the Android SDK.
For detailed instructions, start with the Installing the SDK guide.
1. Prepare your development computer
Read the System Requirements document and make sure that your development
computer meets the hardware and software requirements for the Android SDK.
Install any additional software needed before downloading the Android SDK. In
particular, you may need to install the JDK (version 5 or 6 required) and Eclipse
(version 3.4 or 3.5, needed only if you want develop using the ADT Plugin).
2. Download and install the SDK starter package
Select a starter package from the table at the top of this page and download it to
your development computer. To install the SDK, simply unpack the starter
package to a safe location and then add the location to your PATH.
Setting up Development Computer
http://developer.android.com/sdk/index.html
Compiled by intellisense ITsys Pvt Ltd
3. Install the ADT Plugin for Eclipse
Install the Android Development Tools (ADT) Plugin, restart Eclipse, and set the
"Android" preferences in Eclipse to point to the SDK install location.
4. Add Android platforms and other components to your SDK
Use the Android SDK and AVD Manager, included in the SDK starter package, to
add one or more Android platforms (for example, Android 1.6 or Android 2.2) and
other components to your SDK.
To launch the Android SDK and AVD Manager on Windows, execute SDK
Setup.exe, at the root of the SDK directory. On Mac OS X or Linux, execute the
android tool in the <sdk>/tools/ folder.
The Android NDK is a companion tool to the Android SDK that lets you
build performance-critical portions of your apps in native code.
Setting up Development Computer
Compiled by intellisense ITsys Pvt Ltd
Eclipse IDE
Compiled by intellisense ITsys Pvt Ltd
Eclipse IDE – Project Files
Compiled by intellisense ITsys Pvt Ltd
Eclipse IDE : Android Phone emulator
Compiled by intellisense ITsys Pvt Ltd
“Hello Android” Project
Compiled by intellisense ITsys Pvt Ltd
Create New Project (1)
Compiled by intellisense ITsys Pvt Ltd
Create New Project (2)
Compiled by intellisense ITsys Pvt Ltd
Create New Project (3)
Compiled by intellisense ITsys Pvt Ltd
Create New Project (4)
Compiled by intellisense ITsys Pvt Ltd
Editing Java Source File
Compiled by intellisense ITsys Pvt Ltd
Editing Layout Resource File
Compiled by intellisense ITsys Pvt Ltd
Editing Values Resource File
Compiled by intellisense ITsys Pvt Ltd
Editing AndroidManifest.xml
Compiled by intellisense ITsys Pvt Ltd
Debugging Syntax Error
Compiled by intellisense ITsys Pvt Ltd
Running the Program (1)
Compiled by intellisense ITsys Pvt Ltd
Running the Program (2)
Compiled by intellisense ITsys Pvt Ltd
Program Execution Message on
Console
Compiled by intellisense ITsys Pvt Ltd
Week 1 - Introduction to Android and Java
(a) Installing Android
(b) Creating Hello World
(c) Running on Emulator
(d) Introduction to Java Data types, Loops, Conditionals and Operators
Week 2 - Android Architecture and OOPS
(a) Building Blocks of Android
(b) Java Classes and Objects
(c) Class Methods and Instances
(d) Inheritance and Polymorphism in Java
(e) Interface and Abstract class
Week 3 - Android UI and Advance Java
(a) Using resources
(b) Using themes
(c) Debugging Android Code
(d) Settings(e) Java I/O
(e) Threads and Synchronization
Android Learning Schedule
Compiled by intellisense ITsys Pvt Ltd
Week 4 - Android Graphics and Multimedia
(a) Basic Graphics
(b) Input Handling
(c) Playing Audio
(d) Playing Video
Week 5 - Persistence in Android
(a) Accessing Internal Files system
(b) Acessing SD cards
(c) Introduction to SQLite
(d) Data Binding
(e) Content Provider
Week 6 - Network Awareness
(a) Accessing the Internet
(b) Using Web services
(c) Using Java and Java Script
(d) Location Sensing
Android Learning Schedule
Compiled by intellisense ITsys Pvt Ltd
Week 7 - 3D graphics in OpenGL and other views
(a) OpenGL Introduction
(b) Using Threads and Models
(c) Texture in OpenGL
(d) Making a application in OpenGL
(e) Other standard views in Android
Week 8 - Widgets and the way ahead
(a) Android Widget Development
(b) The Path Ahead for Android
(c) Running Application on device
(d) Android Market Some Do’s and Don'ts
(e) Introduction to System programming in Android
Week 9 & Week 10 - Live Project
(a) Design and Requirement analysis support
(b) Implementation and QA support
Android Learning Schedule
Compiled by intellisense ITsys Pvt Ltd
Think Techknowlogically
MSWH-new Generation ERP
Technology
KnowledgeLogic ownership
SolutionTechnique
Techknowlogical

Mais conteúdo relacionado

Mais procurados

Android Application Fundamentals
Android Application FundamentalsAndroid Application Fundamentals
Android Application FundamentalsVikalp Jain
 
Introduction to android basics
Introduction to android basicsIntroduction to android basics
Introduction to android basicsHasam Panezai
 
Android architecture
Android architectureAndroid architecture
Android architecturepoojapainter
 
Android unveiled (I)
Android unveiled (I)Android unveiled (I)
Android unveiled (I)denian00
 
Android : Architecture & Components
Android : Architecture & ComponentsAndroid : Architecture & Components
Android : Architecture & ComponentsAkash Bisariya
 
Android software stack
Android software stackAndroid software stack
Android software stackSoba Arjun
 
Android overview
Android overviewAndroid overview
Android overviewHas Taiar
 
Android development classes in chandigarh : Big Boxx Academy
Android development classes in chandigarh : Big Boxx AcademyAndroid development classes in chandigarh : Big Boxx Academy
Android development classes in chandigarh : Big Boxx AcademyBig Boxx Animation Academy
 
Anatomy of android aplication
Anatomy of android aplicationAnatomy of android aplication
Anatomy of android aplicationpoojapainter
 
Android For Java Developers
Android For Java DevelopersAndroid For Java Developers
Android For Java DevelopersMike Wolfson
 
Get an Android tutorial for beginners
Get an Android tutorial for beginnersGet an Android tutorial for beginners
Get an Android tutorial for beginnersJavaTpoint.Com
 

Mais procurados (20)

Android Operating System Architecture
Android Operating System ArchitectureAndroid Operating System Architecture
Android Operating System Architecture
 
Android Application Fundamentals
Android Application FundamentalsAndroid Application Fundamentals
Android Application Fundamentals
 
Introduction to android basics
Introduction to android basicsIntroduction to android basics
Introduction to android basics
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
01 03 - introduction to android
01  03 - introduction to android01  03 - introduction to android
01 03 - introduction to android
 
Android unveiled (I)
Android unveiled (I)Android unveiled (I)
Android unveiled (I)
 
Android Anatomy
Android  AnatomyAndroid  Anatomy
Android Anatomy
 
Android basics
Android basicsAndroid basics
Android basics
 
Android : Architecture & Components
Android : Architecture & ComponentsAndroid : Architecture & Components
Android : Architecture & Components
 
Android
Android Android
Android
 
Android software stack
Android software stackAndroid software stack
Android software stack
 
Android By Vipin
Android By VipinAndroid By Vipin
Android By Vipin
 
Android Basic
Android BasicAndroid Basic
Android Basic
 
Android
Android Android
Android
 
Android My Seminar
Android My SeminarAndroid My Seminar
Android My Seminar
 
Android overview
Android overviewAndroid overview
Android overview
 
Android development classes in chandigarh : Big Boxx Academy
Android development classes in chandigarh : Big Boxx AcademyAndroid development classes in chandigarh : Big Boxx Academy
Android development classes in chandigarh : Big Boxx Academy
 
Anatomy of android aplication
Anatomy of android aplicationAnatomy of android aplication
Anatomy of android aplication
 
Android For Java Developers
Android For Java DevelopersAndroid For Java Developers
Android For Java Developers
 
Get an Android tutorial for beginners
Get an Android tutorial for beginnersGet an Android tutorial for beginners
Get an Android tutorial for beginners
 

Destaque

IntellisenseIT infraMSWH (Construction ERP)
IntellisenseIT infraMSWH (Construction ERP)IntellisenseIT infraMSWH (Construction ERP)
IntellisenseIT infraMSWH (Construction ERP)intellisenseit
 
Ooh mswh profile (ERP for OUT of HOME Media)
Ooh mswh profile (ERP for OUT of HOME Media)Ooh mswh profile (ERP for OUT of HOME Media)
Ooh mswh profile (ERP for OUT of HOME Media)intellisenseit
 
Quality Management System
Quality Management SystemQuality Management System
Quality Management Systemintellisenseit
 
Agro mswh profile (Agro Trading ERP)
Agro mswh profile (Agro Trading ERP)Agro mswh profile (Agro Trading ERP)
Agro mswh profile (Agro Trading ERP)intellisenseit
 
Internal Process Audit
Internal Process AuditInternal Process Audit
Internal Process Auditintellisenseit
 

Destaque (7)

Corporate Governance
Corporate GovernanceCorporate Governance
Corporate Governance
 
IntellisenseIT infraMSWH (Construction ERP)
IntellisenseIT infraMSWH (Construction ERP)IntellisenseIT infraMSWH (Construction ERP)
IntellisenseIT infraMSWH (Construction ERP)
 
Ooh mswh profile (ERP for OUT of HOME Media)
Ooh mswh profile (ERP for OUT of HOME Media)Ooh mswh profile (ERP for OUT of HOME Media)
Ooh mswh profile (ERP for OUT of HOME Media)
 
Quality Management System
Quality Management SystemQuality Management System
Quality Management System
 
ABC of Adding Value
ABC of Adding ValueABC of Adding Value
ABC of Adding Value
 
Agro mswh profile (Agro Trading ERP)
Agro mswh profile (Agro Trading ERP)Agro mswh profile (Agro Trading ERP)
Agro mswh profile (Agro Trading ERP)
 
Internal Process Audit
Internal Process AuditInternal Process Audit
Internal Process Audit
 

Semelhante a Android primer

Intro To Android App Development
Intro To Android App DevelopmentIntro To Android App Development
Intro To Android App DevelopmentMike Kvintus
 
Wifi Direct Based Chat And File Transfer Android Application
Wifi Direct Based Chat And File Transfer Android ApplicationWifi Direct Based Chat And File Transfer Android Application
Wifi Direct Based Chat And File Transfer Android ApplicationNitin Bhasin
 
01 what is android
01 what is android01 what is android
01 what is androidC.o. Nieto
 
Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A NutshellTed Chien
 
Android Technology
Android TechnologyAndroid Technology
Android TechnologyAmar Shah
 
Technology and Android.pptx
Technology and Android.pptxTechnology and Android.pptx
Technology and Android.pptxmuthulakshmi cse
 
architecture of android.pptx
architecture of android.pptxarchitecture of android.pptx
architecture of android.pptxallurestore
 
Ch1 hello, android
Ch1 hello, androidCh1 hello, android
Ch1 hello, androidJehad2012
 
Android development tutorial
Android development tutorialAndroid development tutorial
Android development tutorialMohammad Taj
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of androidakila_mano
 
Android fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersAndroid fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersBoom Shukla
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to androidzeelpatel0504
 
Android For Java Developers
Android For Java DevelopersAndroid For Java Developers
Android For Java DevelopersMike Wolfson
 
Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android Ranjith Kumar
 
Android architecture
Android architectureAndroid architecture
Android architecturefahim shahzad
 

Semelhante a Android primer (20)

Intro To Android App Development
Intro To Android App DevelopmentIntro To Android App Development
Intro To Android App Development
 
Wifi Direct Based Chat And File Transfer Android Application
Wifi Direct Based Chat And File Transfer Android ApplicationWifi Direct Based Chat And File Transfer Android Application
Wifi Direct Based Chat And File Transfer Android Application
 
01 what is android
01 what is android01 what is android
01 what is android
 
Android In A Nutshell
Android In A NutshellAndroid In A Nutshell
Android In A Nutshell
 
Android Technology
Android TechnologyAndroid Technology
Android Technology
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 
Technology and Android.pptx
Technology and Android.pptxTechnology and Android.pptx
Technology and Android.pptx
 
architecture of android.pptx
architecture of android.pptxarchitecture of android.pptx
architecture of android.pptx
 
Android Technology
Android TechnologyAndroid Technology
Android Technology
 
Ch1 hello, android
Ch1 hello, androidCh1 hello, android
Ch1 hello, android
 
Android development tutorial
Android development tutorialAndroid development tutorial
Android development tutorial
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of android
 
Android fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginnersAndroid fundamentals and tutorial for beginners
Android fundamentals and tutorial for beginners
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android Seminar
Android SeminarAndroid Seminar
Android Seminar
 
Andriod
Andriod Andriod
Andriod
 
Android For Java Developers
Android For Java DevelopersAndroid For Java Developers
Android For Java Developers
 
Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
01 02 - introduction - adroid stack
01  02 - introduction - adroid stack01  02 - introduction - adroid stack
01 02 - introduction - adroid stack
 

Último

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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
 
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
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 

Último (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
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
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 

Android primer

  • 1. Compiled by intellisense ITsys Pvt Ltd Dr Kalpesh Parikh, Director
  • 2. Compiled by intellisense ITsys Pvt Ltd Android is a software stack for mobile devices that includes an operating system, middleware and key applications What is Android
  • 3. Compiled by intellisense ITsys Pvt Ltd Application framework enabling reuse and replacement of components Dalvik virtual machine optimized for mobile devices Integrated browser based on the open source WebKit engine Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the OpenGL ES 1.0 specification (hardware acceleration optional) SQLite for structured data storage Media support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) GSM Telephony (hardware dependent) Bluetooth, EDGE, 3G, and WiFi (hardware dependent) Camera, GPS, compass, and accelerometer (hardware dependent) Rich development environment including a device emulator, tools for debugging, memory and performance profiling, and a plugin for the Eclipse IDE Android Features
  • 4. Compiled by intellisense ITsys Pvt Ltd Android OS-Architecture
  • 5. Compiled by intellisense ITsys Pvt Ltd Android will ship with a set of core applications including an email client, SMS program, calendar, maps, browser, contacts, and others. All applications are written using the Java programming language. Applications
  • 6. Compiled by intellisense ITsys Pvt Ltd By providing an open development platform, Android offers developers the ability to build extremely rich and innovative applications. Developers are free to take advantage of the device hardware, access location information, run background services, set alarms, add notifications to the status bar, and much, much more. Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components; any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user. Underlying all applications is a set of services and systems, including: 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 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 Application Framework
  • 7. Compiled by intellisense ITsys Pvt Ltd System C library - a BSD-derived implementation of the standard C system library (libc), tuned for embedded Linux-based devices 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 Surface Manager - manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple applications LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view SGL - 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 Core Libraries
  • 8. Compiled by intellisense ITsys Pvt Ltd •Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language. •Every Android application runs in its own process, with its own instance of the Dalvik virtual machine. •Dalvik has been written so that a device can run multiple VMs efficiently. •The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. •The VM is register-based, and runs classes compiled by a Java language compiler that have been transformed into the .dex format by the included "dx" tool. •The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low-level memory management. •Linux Kernel Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack. Android Runtime
  • 9. Compiled by intellisense ITsys Pvt Ltd http://developer.android.com/guide /tutorials/hello-world.html Process Life Cycle
  • 10. Compiled by intellisense ITsys Pvt Ltd BASIC Terminologies .apk file Android application package file. .dex file Compiled Android application code file. Action A description of something that an Intent sender wants done. An action is a string value assigned to an Intent. Activity A single screen in an application, with supporting Java code, derived from the Activity class. Most commonly, an activity is visibly represented by a full screen window that can receive and handle UI events and perform complex tasks, because of the Window it uses to render its window. Though an Activity is typically full screen, it can also be floating or transparent. adb Android Debug Bridge
  • 11. Compiled by intellisense ITsys Pvt Ltd Application An Android application consists of one or more activities, services, listeners, and intent receivers. Canvas A drawing surface that handles compositing of the actual bits against a Bitmap or Surface object. Content Provider A data-abstraction layer that you can use to safely expose your application's data to other applications. Dalvik The Android platform's virtual machine. The Dalvik VM is an interpreter-only virtual machine that executes files in the Dalvik Executable (.dex) format DDMS Dalvik Debug Monitor Service Dialog A floating window that that acts as a lightweight form. BASIC Terminologies
  • 12. Compiled by intellisense ITsys Pvt Ltd Drawable A compiled visual resource that can be used as a background, title, or other part of the screen Intent An message object that you can use to launch or communicate with other applications/activities asynchronously. Intent Filter A filter object that an application declares in its manifest file, to tell the system what types of Intents each of its components is willing to accept and with what criteria. Broadcast Receiver An application class that listens for Intents that are broadcast, rather than being sent to a single target application/activity. Layout Resource An XML file that describes the layout of an Activity screen. BASIC Terminologies
  • 13. Compiled by intellisense ITsys Pvt Ltd Manifest File An XML file that each application must define, to describe the application's package name, version, components (activities, intent filters, services), imported libraries, and describes the various activities, and so on. See The AndroidManifest.xml File for complete information. OpenGL ES Android provides OpenGL ES libraries that you can use for fast, complex 3D images. Resources Nonprogrammatic application components that are external to the compiled application code, but which can be loaded from application code using a well- known reference format. Service An object of class Service that runs in the background (without any UI presence) to perform various persistent actions, such as playing music or monitoring network activity. BASIC Terminologies
  • 14. Compiled by intellisense ITsys Pvt Ltd Surface A Surface holds a Canvas object for drawing, and provides various helper methods to draw layers and resize the surface. SurfaceView A View object that wraps a Surface for drawing, and exposes methods to specify its size and format dynamically. Theme A set of properties (text size, background color, and so on) bundled together to define various default display settings. URIs in Android Android uses URI strings as the basis for requesting data in a content provider (such as to retrieve a list of contacts) and for requesting actions in an Intent (such as opening a Web page in a browser). View A View is a base class for most layout components of an Activity or Dialog screen (text boxes, windows, and so on). BASIC Terminologies
  • 15. Compiled by intellisense ITsys Pvt Ltd Viewgroup A container object that groups a set of child Views. Widget : View subclasses that render form elements and other UI components, such as a text box or popup menu. BASIC Terminologies
  • 16. Compiled by intellisense ITsys Pvt Ltd ANDROID Software Stack
  • 17. Compiled by intellisense ITsys Pvt Ltd ANDROID Programming Framework
  • 18. Compiled by intellisense ITsys Pvt Ltd Quick Start The steps below provide an overview of how to get started with the Android SDK. For detailed instructions, start with the Installing the SDK guide. 1. Prepare your development computer Read the System Requirements document and make sure that your development computer meets the hardware and software requirements for the Android SDK. Install any additional software needed before downloading the Android SDK. In particular, you may need to install the JDK (version 5 or 6 required) and Eclipse (version 3.4 or 3.5, needed only if you want develop using the ADT Plugin). 2. Download and install the SDK starter package Select a starter package from the table at the top of this page and download it to your development computer. To install the SDK, simply unpack the starter package to a safe location and then add the location to your PATH. Setting up Development Computer http://developer.android.com/sdk/index.html
  • 19. Compiled by intellisense ITsys Pvt Ltd 3. Install the ADT Plugin for Eclipse Install the Android Development Tools (ADT) Plugin, restart Eclipse, and set the "Android" preferences in Eclipse to point to the SDK install location. 4. Add Android platforms and other components to your SDK Use the Android SDK and AVD Manager, included in the SDK starter package, to add one or more Android platforms (for example, Android 1.6 or Android 2.2) and other components to your SDK. To launch the Android SDK and AVD Manager on Windows, execute SDK Setup.exe, at the root of the SDK directory. On Mac OS X or Linux, execute the android tool in the <sdk>/tools/ folder. The Android NDK is a companion tool to the Android SDK that lets you build performance-critical portions of your apps in native code. Setting up Development Computer
  • 20. Compiled by intellisense ITsys Pvt Ltd Eclipse IDE
  • 21. Compiled by intellisense ITsys Pvt Ltd Eclipse IDE – Project Files
  • 22. Compiled by intellisense ITsys Pvt Ltd Eclipse IDE : Android Phone emulator
  • 23. Compiled by intellisense ITsys Pvt Ltd “Hello Android” Project
  • 24. Compiled by intellisense ITsys Pvt Ltd Create New Project (1)
  • 25. Compiled by intellisense ITsys Pvt Ltd Create New Project (2)
  • 26. Compiled by intellisense ITsys Pvt Ltd Create New Project (3)
  • 27. Compiled by intellisense ITsys Pvt Ltd Create New Project (4)
  • 28. Compiled by intellisense ITsys Pvt Ltd Editing Java Source File
  • 29. Compiled by intellisense ITsys Pvt Ltd Editing Layout Resource File
  • 30. Compiled by intellisense ITsys Pvt Ltd Editing Values Resource File
  • 31. Compiled by intellisense ITsys Pvt Ltd Editing AndroidManifest.xml
  • 32. Compiled by intellisense ITsys Pvt Ltd Debugging Syntax Error
  • 33. Compiled by intellisense ITsys Pvt Ltd Running the Program (1)
  • 34. Compiled by intellisense ITsys Pvt Ltd Running the Program (2)
  • 35. Compiled by intellisense ITsys Pvt Ltd Program Execution Message on Console
  • 36. Compiled by intellisense ITsys Pvt Ltd Week 1 - Introduction to Android and Java (a) Installing Android (b) Creating Hello World (c) Running on Emulator (d) Introduction to Java Data types, Loops, Conditionals and Operators Week 2 - Android Architecture and OOPS (a) Building Blocks of Android (b) Java Classes and Objects (c) Class Methods and Instances (d) Inheritance and Polymorphism in Java (e) Interface and Abstract class Week 3 - Android UI and Advance Java (a) Using resources (b) Using themes (c) Debugging Android Code (d) Settings(e) Java I/O (e) Threads and Synchronization Android Learning Schedule
  • 37. Compiled by intellisense ITsys Pvt Ltd Week 4 - Android Graphics and Multimedia (a) Basic Graphics (b) Input Handling (c) Playing Audio (d) Playing Video Week 5 - Persistence in Android (a) Accessing Internal Files system (b) Acessing SD cards (c) Introduction to SQLite (d) Data Binding (e) Content Provider Week 6 - Network Awareness (a) Accessing the Internet (b) Using Web services (c) Using Java and Java Script (d) Location Sensing Android Learning Schedule
  • 38. Compiled by intellisense ITsys Pvt Ltd Week 7 - 3D graphics in OpenGL and other views (a) OpenGL Introduction (b) Using Threads and Models (c) Texture in OpenGL (d) Making a application in OpenGL (e) Other standard views in Android Week 8 - Widgets and the way ahead (a) Android Widget Development (b) The Path Ahead for Android (c) Running Application on device (d) Android Market Some Do’s and Don'ts (e) Introduction to System programming in Android Week 9 & Week 10 - Live Project (a) Design and Requirement analysis support (b) Implementation and QA support Android Learning Schedule
  • 39. Compiled by intellisense ITsys Pvt Ltd Think Techknowlogically MSWH-new Generation ERP Technology KnowledgeLogic ownership SolutionTechnique Techknowlogical