SlideShare a Scribd company logo
Programming Android for fun and profit
New kid on the smartphone block Source:  http://www.appleinsider.com/articles/09/08/21/canalys_iphone_outsold_all_windows_mobile_phones_in_q2_2009.html
Handsets
G1 Hardware 528 Mhz processor 192Mb RAM 256Mb ROM + 2Gb SD card wifi + 3G (not multi)touchscreen GPS accelerometer + compass keyboard
An aside: location-based AR wikitude, Google Sky Map, Gamaray, Layar
Interface menu button back button notification bar slidey drawer thing slidey homescreen with widgets context menu (press and hold)
That's great, but... sometimes confusing interface sometimes buggy (apps crash, caller-ID FAIL) poor battery life low internal memory on G1 means you can't install all the apps you want
Software stack It's Java... ...but not as you know it Custom 'JVM' - Dalvik Most of J2SE (minus GUI) Bundled libraries (android.*) for telephony, location, animation, OpenGL ES, SQLlite, etc. Apache XML libraries
Core Components Activities Intents Content Providers Services All provide the illusion of constantly running applications
Enough talk, let's demo!
Publishing your app Package as .apk file Install on any phone (with “untrusted apps”) Can publish to Marketplace for $25 joining fee Marketplace currently has 8000+ apps
Another aside: ASE Android Scripting Environment Program on your phone, in Python, Perlm JRuby, BeanShell, Lua... E.g. serve the contents of your SD card in 4 lines of Python:
Conclusions Modern, flexible development framework Open source Low barrier to entry - programming - publishing
Further information Code + SDK  http://code.google.com/android Development forums  http://www.anddev.org/ ASE  http://code.google.com/p/android-scripting/ Books Slides available at  www.roddis.org/android
Thanks Questions? [email_address]

More Related Content

What's hot (20)

Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...
Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...
Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...
Cellhut
 
Brass Monkey Couch Multiplayer
Brass Monkey Couch MultiplayerBrass Monkey Couch Multiplayer
Brass Monkey Couch Multiplayer
Francois Laberge
 
Samsung galaxy note ii n7100
Samsung galaxy note ii n7100Samsung galaxy note ii n7100
Samsung galaxy note ii n7100
Tiptop Electronics
 
Eye gaze
Eye gazeEye gaze
Eye gaze
Saman Saleem
 
Samsung i9082 galaxy grand unlocked 3 g phone blue
Samsung i9082 galaxy grand unlocked 3 g phone blueSamsung i9082 galaxy grand unlocked 3 g phone blue
Samsung i9082 galaxy grand unlocked 3 g phone blue
Topend Electronics
 
Google glass
Google glassGoogle glass
Google glass
Prasad Kale
 
Hello, windows phone!
Hello, windows phone!Hello, windows phone!
Hello, windows phone!
Rishu Mehra
 
Iphone
IphoneIphone
Iphone
oohh
 
ASUS Zenfone 5 review
ASUS Zenfone 5 reviewASUS Zenfone 5 review
ASUS Zenfone 5 review
91mobiles
 
Google glass ppt
Google glass pptGoogle glass ppt
Google glass ppt
Nidhin P Koshy
 
Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...
Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...
Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...
Rohit Gupta
 
Asus zenfone 6 review
Asus zenfone 6 reviewAsus zenfone 6 review
Asus zenfone 6 review
91mobiles
 
Point of Sale: Sunmi d1
Point of Sale: Sunmi d1Point of Sale: Sunmi d1
Point of Sale: Sunmi d1
wireless barcode scanner
 
New Opendocument Presentation
New Opendocument PresentationNew Opendocument Presentation
New Opendocument Presentation
guest84f31f
 
Nouvelle Technologie 2nd Week
Nouvelle Technologie 2nd WeekNouvelle Technologie 2nd Week
Nouvelle Technologie 2nd Week
Amit Chaudhary
 
Describing The Purpose of Different Types of Computer System (Technical Langu...
Describing The Purpose of Different Types of Computer System (Technical Langu...Describing The Purpose of Different Types of Computer System (Technical Langu...
Describing The Purpose of Different Types of Computer System (Technical Langu...
tommy2909
 
MIUI v5 Tips n Trick - #MIfansJKT meetup
MIUI v5 Tips n Trick - #MIfansJKT meetupMIUI v5 Tips n Trick - #MIfansJKT meetup
MIUI v5 Tips n Trick - #MIfansJKT meetup
Bayu Aji
 
New features in Android Jelly Bean 4.1
New features in Android Jelly Bean 4.1New features in Android Jelly Bean 4.1
New features in Android Jelly Bean 4.1
Verbuzz
 
Nokia X2 review
Nokia X2 reviewNokia X2 review
Nokia X2 review
91mobiles
 
Browser
BrowserBrowser
Browser
vignesh madhusudan l
 
Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...
Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...
Nokia Lumia 710 Black(Unlocked Quadband) Windows 7.5 Smartphone-features-spec...
Cellhut
 
Brass Monkey Couch Multiplayer
Brass Monkey Couch MultiplayerBrass Monkey Couch Multiplayer
Brass Monkey Couch Multiplayer
Francois Laberge
 
Samsung i9082 galaxy grand unlocked 3 g phone blue
Samsung i9082 galaxy grand unlocked 3 g phone blueSamsung i9082 galaxy grand unlocked 3 g phone blue
Samsung i9082 galaxy grand unlocked 3 g phone blue
Topend Electronics
 
Hello, windows phone!
Hello, windows phone!Hello, windows phone!
Hello, windows phone!
Rishu Mehra
 
Iphone
IphoneIphone
Iphone
oohh
 
ASUS Zenfone 5 review
ASUS Zenfone 5 reviewASUS Zenfone 5 review
ASUS Zenfone 5 review
91mobiles
 
Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...
Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...
Microsoft's Lumia 435 Review - Top 10 Features Everything You Need In Budget ...
Rohit Gupta
 
Asus zenfone 6 review
Asus zenfone 6 reviewAsus zenfone 6 review
Asus zenfone 6 review
91mobiles
 
New Opendocument Presentation
New Opendocument PresentationNew Opendocument Presentation
New Opendocument Presentation
guest84f31f
 
Nouvelle Technologie 2nd Week
Nouvelle Technologie 2nd WeekNouvelle Technologie 2nd Week
Nouvelle Technologie 2nd Week
Amit Chaudhary
 
Describing The Purpose of Different Types of Computer System (Technical Langu...
Describing The Purpose of Different Types of Computer System (Technical Langu...Describing The Purpose of Different Types of Computer System (Technical Langu...
Describing The Purpose of Different Types of Computer System (Technical Langu...
tommy2909
 
MIUI v5 Tips n Trick - #MIfansJKT meetup
MIUI v5 Tips n Trick - #MIfansJKT meetupMIUI v5 Tips n Trick - #MIfansJKT meetup
MIUI v5 Tips n Trick - #MIfansJKT meetup
Bayu Aji
 
New features in Android Jelly Bean 4.1
New features in Android Jelly Bean 4.1New features in Android Jelly Bean 4.1
New features in Android Jelly Bean 4.1
Verbuzz
 
Nokia X2 review
Nokia X2 reviewNokia X2 review
Nokia X2 review
91mobiles
 

Viewers also liked (6)

Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
Can Elmas
 
Architecture pitfalls in android development
Architecture pitfalls in android developmentArchitecture pitfalls in android development
Architecture pitfalls in android development
Thomas Krueger
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1
Kainda Kiniel Daka
 
Java Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development WorkshopJava Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development Workshop
Kasun Dananjaya Delgolla
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
Sander Alberink
 
Windows Phone 8 - 5 Application Lifecycle
Windows Phone 8 - 5 Application LifecycleWindows Phone 8 - 5 Application Lifecycle
Windows Phone 8 - 5 Application Lifecycle
Oliver Scheer
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
Can Elmas
 
Architecture pitfalls in android development
Architecture pitfalls in android developmentArchitecture pitfalls in android development
Architecture pitfalls in android development
Thomas Krueger
 
Introduction to Android Development Part 1
Introduction to Android Development Part 1Introduction to Android Development Part 1
Introduction to Android Development Part 1
Kainda Kiniel Daka
 
Java Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development WorkshopJava Meetup - 12-03-15 - Android Development Workshop
Java Meetup - 12-03-15 - Android Development Workshop
Kasun Dananjaya Delgolla
 
Introduction to Android Development
Introduction to Android DevelopmentIntroduction to Android Development
Introduction to Android Development
Sander Alberink
 
Windows Phone 8 - 5 Application Lifecycle
Windows Phone 8 - 5 Application LifecycleWindows Phone 8 - 5 Application Lifecycle
Windows Phone 8 - 5 Application Lifecycle
Oliver Scheer
 
Ad

Similar to Introduction to Android development (20)

Introduction to Android - Mobile Portland
Introduction to Android - Mobile PortlandIntroduction to Android - Mobile Portland
Introduction to Android - Mobile Portland
sullis
 
Android Apps for Absolute Beginners
Android Apps for Absolute BeginnersAndroid Apps for Absolute Beginners
Android Apps for Absolute Beginners
Vaclav Hnizda
 
Android Programming made easy
Android Programming made easyAndroid Programming made easy
Android Programming made easy
Lars Vogel
 
Introduction to Android by Demian Neidetcher
Introduction to Android by Demian NeidetcherIntroduction to Android by Demian Neidetcher
Introduction to Android by Demian Neidetcher
Matthew McCullough
 
Android Overview
Android OverviewAndroid Overview
Android Overview
atomi
 
Why android first
Why android firstWhy android first
Why android first
Ravi Vyas
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
Appin Hisar
 
Secured Mobile Application Development in Android, Blackberry & iOS
Secured Mobile Application Development in Android, Blackberry & iOSSecured Mobile Application Development in Android, Blackberry & iOS
Secured Mobile Application Development in Android, Blackberry & iOS
Appin Delhi
 
Mobile application development2
Mobile application development2Mobile application development2
Mobile application development2
Appin Ara
 
Mobile application development4
Mobile application development4Mobile application development4
Mobile application development4
Appin Kulti Branch
 
Mobile application development2
Mobile application development2Mobile application development2
Mobile application development2
Appin Vijayanagar
 
Android overview part2
Android overview part2Android overview part2
Android overview part2
Synapseindiappsdevelopment
 
AndroidOverview
AndroidOverviewAndroidOverview
AndroidOverview
stevenindands
 
Google Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talkGoogle Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talk
Imam Raza
 
Android Minnebar
Android MinnebarAndroid Minnebar
Android Minnebar
Justin Grammens
 
Sdk overview
Sdk overviewSdk overview
Sdk overview
guestfa73ae
 
Part 1 robot in the making
Part 1 robot in the makingPart 1 robot in the making
Part 1 robot in the making
Michael Angelo Rivera
 
android-tutorial-for-beginner
android-tutorial-for-beginnerandroid-tutorial-for-beginner
android-tutorial-for-beginner
Ajailal Parackal
 
Android overview
Android overviewAndroid overview
Android overview
bhavani p
 
"double quotes"
"double quotes""double quotes"
"double quotes"
Bhavani Testone
 
Introduction to Android - Mobile Portland
Introduction to Android - Mobile PortlandIntroduction to Android - Mobile Portland
Introduction to Android - Mobile Portland
sullis
 
Android Apps for Absolute Beginners
Android Apps for Absolute BeginnersAndroid Apps for Absolute Beginners
Android Apps for Absolute Beginners
Vaclav Hnizda
 
Android Programming made easy
Android Programming made easyAndroid Programming made easy
Android Programming made easy
Lars Vogel
 
Introduction to Android by Demian Neidetcher
Introduction to Android by Demian NeidetcherIntroduction to Android by Demian Neidetcher
Introduction to Android by Demian Neidetcher
Matthew McCullough
 
Android Overview
Android OverviewAndroid Overview
Android Overview
atomi
 
Why android first
Why android firstWhy android first
Why android first
Ravi Vyas
 
Mobile application development
Mobile application developmentMobile application development
Mobile application development
Appin Hisar
 
Secured Mobile Application Development in Android, Blackberry & iOS
Secured Mobile Application Development in Android, Blackberry & iOSSecured Mobile Application Development in Android, Blackberry & iOS
Secured Mobile Application Development in Android, Blackberry & iOS
Appin Delhi
 
Mobile application development2
Mobile application development2Mobile application development2
Mobile application development2
Appin Ara
 
Mobile application development4
Mobile application development4Mobile application development4
Mobile application development4
Appin Kulti Branch
 
Mobile application development2
Mobile application development2Mobile application development2
Mobile application development2
Appin Vijayanagar
 
Google Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talkGoogle Developer Group(GDG) DevFest Event 2012 Android talk
Google Developer Group(GDG) DevFest Event 2012 Android talk
Imam Raza
 
android-tutorial-for-beginner
android-tutorial-for-beginnerandroid-tutorial-for-beginner
android-tutorial-for-beginner
Ajailal Parackal
 
Android overview
Android overviewAndroid overview
Android overview
bhavani p
 
Ad

More from Tristan Roddis (10)

Making Meaning in a Multilingual World
Making Meaning in a Multilingual WorldMaking Meaning in a Multilingual World
Making Meaning in a Multilingual World
Tristan Roddis
 
Scaling drupal on amazon web services dr
Scaling drupal on amazon web services drScaling drupal on amazon web services dr
Scaling drupal on amazon web services dr
Tristan Roddis
 
Bitish Sea Forts
Bitish Sea FortsBitish Sea Forts
Bitish Sea Forts
Tristan Roddis
 
Linked data at the Science Museum
Linked data at the Science MuseumLinked data at the Science Museum
Linked data at the Science Museum
Tristan Roddis
 
Experiences of CMS selection
Experiences of CMS selectionExperiences of CMS selection
Experiences of CMS selection
Tristan Roddis
 
QED: Quantum Electrodynamics
QED: Quantum ElectrodynamicsQED: Quantum Electrodynamics
QED: Quantum Electrodynamics
Tristan Roddis
 
Writing implements from the future (Livescribe Pulse)
Writing implements from the future (Livescribe Pulse)Writing implements from the future (Livescribe Pulse)
Writing implements from the future (Livescribe Pulse)
Tristan Roddis
 
Arduino workshop
Arduino workshopArduino workshop
Arduino workshop
Tristan Roddis
 
Introduction to programming AVR microcontrollers
Introduction to programming AVR microcontrollersIntroduction to programming AVR microcontrollers
Introduction to programming AVR microcontrollers
Tristan Roddis
 
QRCodes
QRCodesQRCodes
QRCodes
Tristan Roddis
 
Making Meaning in a Multilingual World
Making Meaning in a Multilingual WorldMaking Meaning in a Multilingual World
Making Meaning in a Multilingual World
Tristan Roddis
 
Scaling drupal on amazon web services dr
Scaling drupal on amazon web services drScaling drupal on amazon web services dr
Scaling drupal on amazon web services dr
Tristan Roddis
 
Linked data at the Science Museum
Linked data at the Science MuseumLinked data at the Science Museum
Linked data at the Science Museum
Tristan Roddis
 
Experiences of CMS selection
Experiences of CMS selectionExperiences of CMS selection
Experiences of CMS selection
Tristan Roddis
 
QED: Quantum Electrodynamics
QED: Quantum ElectrodynamicsQED: Quantum Electrodynamics
QED: Quantum Electrodynamics
Tristan Roddis
 
Writing implements from the future (Livescribe Pulse)
Writing implements from the future (Livescribe Pulse)Writing implements from the future (Livescribe Pulse)
Writing implements from the future (Livescribe Pulse)
Tristan Roddis
 
Introduction to programming AVR microcontrollers
Introduction to programming AVR microcontrollersIntroduction to programming AVR microcontrollers
Introduction to programming AVR microcontrollers
Tristan Roddis
 

Recently uploaded (20)

AI Trends - Mary Meeker
AI Trends - Mary MeekerAI Trends - Mary Meeker
AI Trends - Mary Meeker
Razin Mustafiz
 
Data Virtualization: Bringing the Power of FME to Any Application
Data Virtualization: Bringing the Power of FME to Any ApplicationData Virtualization: Bringing the Power of FME to Any Application
Data Virtualization: Bringing the Power of FME to Any Application
Safe Software
 
Cyber Security Legal Framework in Nepal.pptx
Cyber Security Legal Framework in Nepal.pptxCyber Security Legal Framework in Nepal.pptx
Cyber Security Legal Framework in Nepal.pptx
Ghimire B.R.
 
Dr Jimmy Schwarzkopf presentation on the SUMMIT 2025 A
Dr Jimmy Schwarzkopf presentation on the SUMMIT 2025 ADr Jimmy Schwarzkopf presentation on the SUMMIT 2025 A
Dr Jimmy Schwarzkopf presentation on the SUMMIT 2025 A
Dr. Jimmy Schwarzkopf
 
Introducing the OSA 3200 SP and OSA 3250 ePRC
Introducing the OSA 3200 SP and OSA 3250 ePRCIntroducing the OSA 3200 SP and OSA 3250 ePRC
Introducing the OSA 3200 SP and OSA 3250 ePRC
Adtran
 
New Ways to Reduce Database Costs with ScyllaDB
New Ways to Reduce Database Costs with ScyllaDBNew Ways to Reduce Database Costs with ScyllaDB
New Ways to Reduce Database Costs with ScyllaDB
ScyllaDB
 
LSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection FunctionLSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection Function
Takahiro Harada
 
TrustArc Webinar: Mastering Privacy Contracting
TrustArc Webinar: Mastering Privacy ContractingTrustArc Webinar: Mastering Privacy Contracting
TrustArc Webinar: Mastering Privacy Contracting
TrustArc
 
STKI Israel Market Study 2025 final v1 version
STKI Israel Market Study 2025 final v1 versionSTKI Israel Market Study 2025 final v1 version
STKI Israel Market Study 2025 final v1 version
Dr. Jimmy Schwarzkopf
 
Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025
Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025
Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025
Nikki Chapple
 
Cybersecurity Fundamentals: Apprentice - Palo Alto Certificate
Cybersecurity Fundamentals: Apprentice - Palo Alto CertificateCybersecurity Fundamentals: Apprentice - Palo Alto Certificate
Cybersecurity Fundamentals: Apprentice - Palo Alto Certificate
VICTOR MAESTRE RAMIREZ
 
SDG 9000 Series: Unleashing multigigabit everywhere
SDG 9000 Series: Unleashing multigigabit everywhereSDG 9000 Series: Unleashing multigigabit everywhere
SDG 9000 Series: Unleashing multigigabit everywhere
Adtran
 
Evaluation Challenges in Using Generative AI for Science & Technical Content
Evaluation Challenges in Using Generative AI for Science & Technical ContentEvaluation Challenges in Using Generative AI for Science & Technical Content
Evaluation Challenges in Using Generative AI for Science & Technical Content
Paul Groth
 
Palo Alto Networks Cybersecurity Foundation
Palo Alto Networks Cybersecurity FoundationPalo Alto Networks Cybersecurity Foundation
Palo Alto Networks Cybersecurity Foundation
VICTOR MAESTRE RAMIREZ
 
Agentic AI - The New Era of Intelligence
Agentic AI - The New Era of IntelligenceAgentic AI - The New Era of Intelligence
Agentic AI - The New Era of Intelligence
Muzammil Shah
 
Introducing FME Realize: A New Era of Spatial Computing and AR
Introducing FME Realize: A New Era of Spatial Computing and ARIntroducing FME Realize: A New Era of Spatial Computing and AR
Introducing FME Realize: A New Era of Spatial Computing and AR
Safe Software
 
Create Your First AI Agent with UiPath Agent Builder
Create Your First AI Agent with UiPath Agent BuilderCreate Your First AI Agent with UiPath Agent Builder
Create Your First AI Agent with UiPath Agent Builder
DianaGray10
 
Multistream in SIP and NoSIP @ OpenSIPS Summit 2025
Multistream in SIP and NoSIP @ OpenSIPS Summit 2025Multistream in SIP and NoSIP @ OpenSIPS Summit 2025
Multistream in SIP and NoSIP @ OpenSIPS Summit 2025
Lorenzo Miniero
 
Supercharge Your AI Development with Local LLMs
Supercharge Your AI Development with Local LLMsSupercharge Your AI Development with Local LLMs
Supercharge Your AI Development with Local LLMs
Francesco Corti
 
UiPath Community Berlin: Studio Tips & Tricks and UiPath Insights
UiPath Community Berlin: Studio Tips & Tricks and UiPath InsightsUiPath Community Berlin: Studio Tips & Tricks and UiPath Insights
UiPath Community Berlin: Studio Tips & Tricks and UiPath Insights
UiPathCommunity
 
AI Trends - Mary Meeker
AI Trends - Mary MeekerAI Trends - Mary Meeker
AI Trends - Mary Meeker
Razin Mustafiz
 
Data Virtualization: Bringing the Power of FME to Any Application
Data Virtualization: Bringing the Power of FME to Any ApplicationData Virtualization: Bringing the Power of FME to Any Application
Data Virtualization: Bringing the Power of FME to Any Application
Safe Software
 
Cyber Security Legal Framework in Nepal.pptx
Cyber Security Legal Framework in Nepal.pptxCyber Security Legal Framework in Nepal.pptx
Cyber Security Legal Framework in Nepal.pptx
Ghimire B.R.
 
Dr Jimmy Schwarzkopf presentation on the SUMMIT 2025 A
Dr Jimmy Schwarzkopf presentation on the SUMMIT 2025 ADr Jimmy Schwarzkopf presentation on the SUMMIT 2025 A
Dr Jimmy Schwarzkopf presentation on the SUMMIT 2025 A
Dr. Jimmy Schwarzkopf
 
Introducing the OSA 3200 SP and OSA 3250 ePRC
Introducing the OSA 3200 SP and OSA 3250 ePRCIntroducing the OSA 3200 SP and OSA 3250 ePRC
Introducing the OSA 3200 SP and OSA 3250 ePRC
Adtran
 
New Ways to Reduce Database Costs with ScyllaDB
New Ways to Reduce Database Costs with ScyllaDBNew Ways to Reduce Database Costs with ScyllaDB
New Ways to Reduce Database Costs with ScyllaDB
ScyllaDB
 
LSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection FunctionLSNIF: Locally-Subdivided Neural Intersection Function
LSNIF: Locally-Subdivided Neural Intersection Function
Takahiro Harada
 
TrustArc Webinar: Mastering Privacy Contracting
TrustArc Webinar: Mastering Privacy ContractingTrustArc Webinar: Mastering Privacy Contracting
TrustArc Webinar: Mastering Privacy Contracting
TrustArc
 
STKI Israel Market Study 2025 final v1 version
STKI Israel Market Study 2025 final v1 versionSTKI Israel Market Study 2025 final v1 version
STKI Israel Market Study 2025 final v1 version
Dr. Jimmy Schwarzkopf
 
Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025
Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025
Protecting Your Sensitive Data with Microsoft Purview - IRMS 2025
Nikki Chapple
 
Cybersecurity Fundamentals: Apprentice - Palo Alto Certificate
Cybersecurity Fundamentals: Apprentice - Palo Alto CertificateCybersecurity Fundamentals: Apprentice - Palo Alto Certificate
Cybersecurity Fundamentals: Apprentice - Palo Alto Certificate
VICTOR MAESTRE RAMIREZ
 
SDG 9000 Series: Unleashing multigigabit everywhere
SDG 9000 Series: Unleashing multigigabit everywhereSDG 9000 Series: Unleashing multigigabit everywhere
SDG 9000 Series: Unleashing multigigabit everywhere
Adtran
 
Evaluation Challenges in Using Generative AI for Science & Technical Content
Evaluation Challenges in Using Generative AI for Science & Technical ContentEvaluation Challenges in Using Generative AI for Science & Technical Content
Evaluation Challenges in Using Generative AI for Science & Technical Content
Paul Groth
 
Palo Alto Networks Cybersecurity Foundation
Palo Alto Networks Cybersecurity FoundationPalo Alto Networks Cybersecurity Foundation
Palo Alto Networks Cybersecurity Foundation
VICTOR MAESTRE RAMIREZ
 
Agentic AI - The New Era of Intelligence
Agentic AI - The New Era of IntelligenceAgentic AI - The New Era of Intelligence
Agentic AI - The New Era of Intelligence
Muzammil Shah
 
Introducing FME Realize: A New Era of Spatial Computing and AR
Introducing FME Realize: A New Era of Spatial Computing and ARIntroducing FME Realize: A New Era of Spatial Computing and AR
Introducing FME Realize: A New Era of Spatial Computing and AR
Safe Software
 
Create Your First AI Agent with UiPath Agent Builder
Create Your First AI Agent with UiPath Agent BuilderCreate Your First AI Agent with UiPath Agent Builder
Create Your First AI Agent with UiPath Agent Builder
DianaGray10
 
Multistream in SIP and NoSIP @ OpenSIPS Summit 2025
Multistream in SIP and NoSIP @ OpenSIPS Summit 2025Multistream in SIP and NoSIP @ OpenSIPS Summit 2025
Multistream in SIP and NoSIP @ OpenSIPS Summit 2025
Lorenzo Miniero
 
Supercharge Your AI Development with Local LLMs
Supercharge Your AI Development with Local LLMsSupercharge Your AI Development with Local LLMs
Supercharge Your AI Development with Local LLMs
Francesco Corti
 
UiPath Community Berlin: Studio Tips & Tricks and UiPath Insights
UiPath Community Berlin: Studio Tips & Tricks and UiPath InsightsUiPath Community Berlin: Studio Tips & Tricks and UiPath Insights
UiPath Community Berlin: Studio Tips & Tricks and UiPath Insights
UiPathCommunity
 

Introduction to Android development

  • 1. Programming Android for fun and profit
  • 2. New kid on the smartphone block Source: http://www.appleinsider.com/articles/09/08/21/canalys_iphone_outsold_all_windows_mobile_phones_in_q2_2009.html
  • 4. G1 Hardware 528 Mhz processor 192Mb RAM 256Mb ROM + 2Gb SD card wifi + 3G (not multi)touchscreen GPS accelerometer + compass keyboard
  • 5. An aside: location-based AR wikitude, Google Sky Map, Gamaray, Layar
  • 6. Interface menu button back button notification bar slidey drawer thing slidey homescreen with widgets context menu (press and hold)
  • 7. That's great, but... sometimes confusing interface sometimes buggy (apps crash, caller-ID FAIL) poor battery life low internal memory on G1 means you can't install all the apps you want
  • 8. Software stack It's Java... ...but not as you know it Custom 'JVM' - Dalvik Most of J2SE (minus GUI) Bundled libraries (android.*) for telephony, location, animation, OpenGL ES, SQLlite, etc. Apache XML libraries
  • 9. Core Components Activities Intents Content Providers Services All provide the illusion of constantly running applications
  • 11. Publishing your app Package as .apk file Install on any phone (with “untrusted apps”) Can publish to Marketplace for $25 joining fee Marketplace currently has 8000+ apps
  • 12. Another aside: ASE Android Scripting Environment Program on your phone, in Python, Perlm JRuby, BeanShell, Lua... E.g. serve the contents of your SD card in 4 lines of Python:
  • 13. Conclusions Modern, flexible development framework Open source Low barrier to entry - programming - publishing
  • 14. Further information Code + SDK http://code.google.com/android Development forums http://www.anddev.org/ ASE http://code.google.com/p/android-scripting/ Books Slides available at www.roddis.org/android