SlideShare a Scribd company logo
1 of 19
Jesse Anderson
 Operating System for Mobile Devices
 Based on modified Linux kernel
 Middleware
 Set of Applications
 E-mail client
 Browser
 Released under Apache License
 Dalvik Virtual Machine
 Webkit for Browser and Embeddable Object
 2D and 3D (Open GL) graphics
 SQLite for databases
 Still Image Support (JPEG, GIF, PNG, BMP)
 Video Support (H.263, H.264 AVC, MPEG-4
SP)
 Audio Support (AAC, MP3, MIDI, Ogg Vorbis,
PCM)
 Bluetooth
 EDGE and 3G
 WIFI (802.11 b/g/n)
 WiMAX
 Camera
 GPS
 Compass
 Accelerometer
 Optimized for low memory
 Register Based not Stack Based
 Multiple VM instances at once
 Compiled into dex files and apk package
 JIT Compilation added in Android 2.2
 No Java ME, AWT or Swing classes
Android iPhone SDK
Programming
Languages
Java, C, C++, App
Inventor, Mono,
Interpreted
Objective C
App Market Wild West Gilded Cage
App Submission Immediate Reviewed (HIG, legal)
Device Makers Many Apple
SDK Free/OSS ($25 listing) $100
Development Platforms Windows, Mac, Linux Mac OSX
Distribution Restrictions None Provisioned
Market Share 13% 24.4%
UI Framework Android Cocoa Touch
 Application Package apk
 Contains all data and resources needed
 Components
 Activity
 Visual user interface for one focused endeavor
 Service
 Background task like music playback
 Broadcast Receivers
 Receive and react to broadcast announcements
 Content Providers
 Makes data available to other applications
 Activates Activities, Services, or Broadcast
Receivers
 Move between Activities in program
 Initiate a phone call
 Send an E-mail
 Get broadcasts when battery is low
 Programmatically
 Using POJO (Plain Old Java Objects)
 Using XML (Preferred)
 Layouts
 Menus
 Values
 Resource Arrays
 Colors
 Dimensions
 Strings
 Styles
 Download and install Eclipse
 Download and install Android SDK
 Download Android Platforms and
Components
 Install ADT plug-in for Eclipse
 http://developer.android.com/sdk/eclipse-adt.html
 Hello World as a POJO example
 R Class
 Provides constants for accessing resources in
strings.xml, colors.xml, layouts, etc
 Generated code
 Automatically handled on Eclipse using Android plug-
in
 Manually using Android tools
 UI Object from Layout
 Provide Resource ID
 android:id="@+id/uiObject“
 (cast) findViewById(R.id.uiObject);
 Strings
 @string/myString
 getString(R.string.myString);
 Colors (ARGB)
 @color/myColor
 getResources().getColor(R.color.myColor);
 Hello World Using XML
 Hello World Using XML and Resources
 Activities show a user interface
 New activities must be registered in the
AndroidManifest.xml file
 Intents move between activities
 Hello World Using Intents and new Activities
 Android Developer Documentation
 http://developer.android.com
 Hello Android by Ed Burnette
 Beginning Android by Mark L. Murphy
 Google I/O Videos
 http://developer.android.com/videos
 http://code.google.com/events/io/2010/sessions.html

More Related Content

Viewers also liked (9)

Laporan monev tw iv 2014 gabungan
Laporan monev tw iv 2014 gabunganLaporan monev tw iv 2014 gabungan
Laporan monev tw iv 2014 gabungan
 
resume TMI
resume TMIresume TMI
resume TMI
 
An Introduction to Exercises
An Introduction to ExercisesAn Introduction to Exercises
An Introduction to Exercises
 
20150128 工作榮耀神-向上管理
20150128 工作榮耀神-向上管理20150128 工作榮耀神-向上管理
20150128 工作榮耀神-向上管理
 
Alles met mate(n): social media & onderwijs. #ELF15
Alles met mate(n): social media & onderwijs. #ELF15Alles met mate(n): social media & onderwijs. #ELF15
Alles met mate(n): social media & onderwijs. #ELF15
 
Recommendation Letter From Christina Eleanor
Recommendation Letter From Christina EleanorRecommendation Letter From Christina Eleanor
Recommendation Letter From Christina Eleanor
 
Aisin res
Aisin resAisin res
Aisin res
 
182 - Shadows
182 - Shadows182 - Shadows
182 - Shadows
 
Работайте с Оптимизмом!
Работайте с Оптимизмом!Работайте с Оптимизмом!
Работайте с Оптимизмом!
 

Similar to Introduction to Android

Android Development Overview
Android Development OverviewAndroid Development Overview
Android Development Overview
Igor Birman
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
Jindal Gohil
 

Similar to Introduction to Android (20)

Android Overview
Android OverviewAndroid Overview
Android Overview
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 
Getting Started With Android
Getting Started With AndroidGetting Started With Android
Getting Started With Android
 
Android Development Overview
Android Development OverviewAndroid Development Overview
Android Development Overview
 
Intro To Android App Development
Intro To Android App DevelopmentIntro To Android App Development
Intro To Android App Development
 
1 introduction of android
1 introduction of android1 introduction of android
1 introduction of android
 
Android Anatomy
Android  AnatomyAndroid  Anatomy
Android Anatomy
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android understanding
Android understandingAndroid understanding
Android understanding
 
Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11 Android Introduction on Java Forum Stuttgart 11
Android Introduction on Java Forum Stuttgart 11
 
Introduction to Xamarin Mobile Platform
Introduction to Xamarin Mobile PlatformIntroduction to Xamarin Mobile Platform
Introduction to Xamarin Mobile Platform
 
Android development-tutorial
Android development-tutorialAndroid development-tutorial
Android development-tutorial
 
IntroToAndroid
IntroToAndroidIntroToAndroid
IntroToAndroid
 
Android overview
Android overviewAndroid overview
Android overview
 
Android basics
Android basicsAndroid basics
Android basics
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Introduction to Android
Introduction to AndroidIntroduction to Android
Introduction to Android
 
Porting and Maintaining your C++ Game on Android without losing your mind
Porting and Maintaining your C++ Game on Android without losing your mindPorting and Maintaining your C++ Game on Android without losing your mind
Porting and Maintaining your C++ Game on Android without losing your mind
 
Introduction to Android
Introduction to Android Introduction to Android
Introduction to Android
 
Android cours
Android coursAndroid cours
Android cours
 

More from Jesse Anderson

Strata 2012 Million Monkeys
Strata 2012 Million MonkeysStrata 2012 Million Monkeys
Strata 2012 Million Monkeys
Jesse Anderson
 

More from Jesse Anderson (13)

Managing Real-Time Data Teams
Managing Real-Time Data TeamsManaging Real-Time Data Teams
Managing Real-Time Data Teams
 
Pulsar for Kafka People
Pulsar for Kafka PeoplePulsar for Kafka People
Pulsar for Kafka People
 
Big Data and Analytics in the COVID-19 Era
Big Data and Analytics in the COVID-19 EraBig Data and Analytics in the COVID-19 Era
Big Data and Analytics in the COVID-19 Era
 
Working Together As Data Teams V1
Working Together As Data Teams V1Working Together As Data Teams V1
Working Together As Data Teams V1
 
What Does an Exec Need to About Architecture and Why
What Does an Exec Need to About Architecture and WhyWhat Does an Exec Need to About Architecture and Why
What Does an Exec Need to About Architecture and Why
 
The Five Dysfunctions of a Data Engineering Team
The Five Dysfunctions of a Data Engineering TeamThe Five Dysfunctions of a Data Engineering Team
The Five Dysfunctions of a Data Engineering Team
 
HBaseCon 2014-Just the Basics
HBaseCon 2014-Just the BasicsHBaseCon 2014-Just the Basics
HBaseCon 2014-Just the Basics
 
Million Monkeys User Group
Million Monkeys User GroupMillion Monkeys User Group
Million Monkeys User Group
 
Strata 2012 Million Monkeys
Strata 2012 Million MonkeysStrata 2012 Million Monkeys
Strata 2012 Million Monkeys
 
EC2 Performance, Spot Instance ROI and EMR Scalability
EC2 Performance, Spot Instance ROI and EMR ScalabilityEC2 Performance, Spot Instance ROI and EMR Scalability
EC2 Performance, Spot Instance ROI and EMR Scalability
 
Introduction to Regular Expressions
Introduction to Regular ExpressionsIntroduction to Regular Expressions
Introduction to Regular Expressions
 
Why Use MVC?
Why Use MVC?Why Use MVC?
Why Use MVC?
 
How to Use MVC
How to Use MVCHow to Use MVC
How to Use MVC
 

Recently uploaded

Recently uploaded (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
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
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 

Introduction to Android

  • 2.  Operating System for Mobile Devices  Based on modified Linux kernel  Middleware  Set of Applications  E-mail client  Browser  Released under Apache License
  • 3.
  • 4.  Dalvik Virtual Machine  Webkit for Browser and Embeddable Object  2D and 3D (Open GL) graphics  SQLite for databases  Still Image Support (JPEG, GIF, PNG, BMP)  Video Support (H.263, H.264 AVC, MPEG-4 SP)  Audio Support (AAC, MP3, MIDI, Ogg Vorbis, PCM)
  • 5.  Bluetooth  EDGE and 3G  WIFI (802.11 b/g/n)  WiMAX  Camera  GPS  Compass  Accelerometer
  • 6.  Optimized for low memory  Register Based not Stack Based  Multiple VM instances at once  Compiled into dex files and apk package  JIT Compilation added in Android 2.2  No Java ME, AWT or Swing classes
  • 7. Android iPhone SDK Programming Languages Java, C, C++, App Inventor, Mono, Interpreted Objective C App Market Wild West Gilded Cage App Submission Immediate Reviewed (HIG, legal) Device Makers Many Apple SDK Free/OSS ($25 listing) $100 Development Platforms Windows, Mac, Linux Mac OSX Distribution Restrictions None Provisioned Market Share 13% 24.4% UI Framework Android Cocoa Touch
  • 8.  Application Package apk  Contains all data and resources needed  Components  Activity  Visual user interface for one focused endeavor  Service  Background task like music playback  Broadcast Receivers  Receive and react to broadcast announcements  Content Providers  Makes data available to other applications
  • 9.  Activates Activities, Services, or Broadcast Receivers  Move between Activities in program  Initiate a phone call  Send an E-mail  Get broadcasts when battery is low
  • 10.
  • 11.  Programmatically  Using POJO (Plain Old Java Objects)  Using XML (Preferred)  Layouts  Menus  Values  Resource Arrays  Colors  Dimensions  Strings  Styles
  • 12.  Download and install Eclipse  Download and install Android SDK  Download Android Platforms and Components  Install ADT plug-in for Eclipse  http://developer.android.com/sdk/eclipse-adt.html
  • 13.  Hello World as a POJO example
  • 14.  R Class  Provides constants for accessing resources in strings.xml, colors.xml, layouts, etc  Generated code  Automatically handled on Eclipse using Android plug- in  Manually using Android tools
  • 15.  UI Object from Layout  Provide Resource ID  android:id="@+id/uiObject“  (cast) findViewById(R.id.uiObject);  Strings  @string/myString  getString(R.string.myString);  Colors (ARGB)  @color/myColor  getResources().getColor(R.color.myColor);
  • 16.  Hello World Using XML  Hello World Using XML and Resources
  • 17.  Activities show a user interface  New activities must be registered in the AndroidManifest.xml file  Intents move between activities
  • 18.  Hello World Using Intents and new Activities
  • 19.  Android Developer Documentation  http://developer.android.com  Hello Android by Ed Burnette  Beginning Android by Mark L. Murphy  Google I/O Videos  http://developer.android.com/videos  http://code.google.com/events/io/2010/sessions.html