SlideShare a Scribd company logo
Android is client Java
Android is client Java
Android is client Java
Android is client Java


   Can't we all just get along?
Tablet devices, and
 mobile devices in
    general, are
 revolutionizing IT
It is practical to treat
     Android's Java
runtime environment
   as separate from
        Android
When we say
  “Android is client
         Java”
that is a more-general
 statement than, say,
   “Objective-C is a
mainstream language”
Client Java was...
       AWT
      Swing
       SWT
     JavaFX
   Qt bindings
       Etc.
Step1: “Write once,
 run everywhere”
 Step 2: Convince
 everyone this is a
     good idea
   Step 3: ?????
Step1: Make a really
appropriate mobile
managed language
      runtime
Step 2: Watch ISVs
write 200,000+ apps
I'm good
enough, I'm
    smart
enough, and
 doggone it,
 people like
     me!
The recipe for modern
   smartphone OSs:
      Linux or other
embedded UNIX-like OS
   Managed language
         runtime
  Full-featured browser
Examples:
     iOS
   Android
Windows Phone
Partial:
Meego – more like
Linux-goes-mobile
  Bada – C++ app
 runtime and APIs
Android is client Java
Real multi-processing –
 multiple VM instances
Low memory overhead
      per instance
      Fast launch
Share-able data heap
  – copy-on-write
    Save/restore
  component and
   process state
Security benefits from true
     multi-processing
     Process per app
    UID per publisher
 Effective sandboxing of
   multiple publishers
VM efficiency for
     mobile
Smaller bytecode
Faster bytecode
Mobile-tuned JIT compiler
   Much less CPU/power-
intensive than previous JIT
         compilers
 Compiles much less code
Relies on efficiency of non-
      compiled code
Android is a really
  good, mature client
Java, and far ahead of
    other managed
language runtimes for
   mobile devices
So it is reasonable to want
  the Android application
     runtion on another
platform, but can you get it
    without diluting the
      advantages with
 virtualization, emulation,
      hypervizors, etc?
Android is client Java
Why?
Android is client Java
Here comes another
guy prophesying the
 end of the PC era
Plummeting!




     Source: Hitslink
Why believe it this
     time?
The dominance of PCs in IT
       is artificial
       PCs were...
  Personal – you own it
      A revolution
Empowering to individuals
Some people need
      PCs
Some people need
   this stove
Android is client Java
Android is client Java
So why did all the
alternatives fail?
The economics of PC
 manufacturing crushed
     all challengers
   Tablets are “large
  smartphones” - they
inherit the economics of
      smartphones
Tablets and touch make
everything easier Cheaper
        to support
    Tablets can support
  legacy apps through
  desktop virtualization
     Tablets are a great
 delivery vehicle for Web
           apps
A new revolution in
     enterprise
 collaboration and
  communication
Android is client Java
Android is client Java
Android is client Java
Android is client Java
To sum up
Java is a good language
Android Java is the best
  managed language
  runtime for mobile
         devices
Tablets are an IT revolution
  Tablets will become the
       basis of a new
  collaborative work and
communications paradigm
 Java can be a big part of
      this revolution
There will be lots of
Android devices, but...
You can treat Android
    as a runtime
   separately from
 Android OS, if you
   need or want to
Learn Android Java

More Related Content

PPT
Milam j brooke project 4 tablet-mobile design
PPTX
Android
PPTX
Android and android phones
PDF
Pad Form
PPTX
Cross-platform development with Qt and OpenGL ES 2.0
PPTX
Android App Development
PPTX
Devcon
PPTX
Android
Milam j brooke project 4 tablet-mobile design
Android
Android and android phones
Pad Form
Cross-platform development with Qt and OpenGL ES 2.0
Android App Development
Devcon
Android

What's hot (20)

PDF
Start from the User
PDF
Mobile or Web First?
DOCX
TOP 5 TECHNOLOGIES TO CREATE A COMPETENT ANDROID APP IN 2019
PPT
Mobile Application Development With Android
PPTX
Introduction to Android Programming
PPTX
Nex g exuberant solutions
PPTX
Go mobile with Windows Phone
PDF
Camerjam mobile marketing masterclass 12snap
PDF
Android Introduction
PPTX
Basics of android
PPT
Modern mobile development overview
PPT
Ro Ck St Ar
PDF
Android Design Architecture
PPT
Android ppt
PPTX
Latest Development Of MeeGo
PPTX
Tk2323 lecture 1 introduction to mobile application
PPT
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
PPTX
Android ppt
PPTX
Windows 10 & Raspberry Pi 2
Start from the User
Mobile or Web First?
TOP 5 TECHNOLOGIES TO CREATE A COMPETENT ANDROID APP IN 2019
Mobile Application Development With Android
Introduction to Android Programming
Nex g exuberant solutions
Go mobile with Windows Phone
Camerjam mobile marketing masterclass 12snap
Android Introduction
Basics of android
Modern mobile development overview
Ro Ck St Ar
Android Design Architecture
Android ppt
Latest Development Of MeeGo
Tk2323 lecture 1 introduction to mobile application
Introduction to Application Development in Python and Gtk+ / Hildon @ Maemo 5
Android ppt
Windows 10 & Raspberry Pi 2
Ad

Viewers also liked (8)

PPT
Faster! Faster! Accelerate your business with blazing prototypes
PDF
Refactoring to the State Design Pattern
PPTX
Oscon 2013 Jesse Anderson
PPTX
Big Data for each one of us
PDF
The Vanishing Pattern: from iterators to generators in Python
PPTX
Finite State Machines - Why the fear?
PDF
Using Cascalog to build an app with City of Palo Alto Open Data
PPTX
How we built our community using Github - Uri Cohen
Faster! Faster! Accelerate your business with blazing prototypes
Refactoring to the State Design Pattern
Oscon 2013 Jesse Anderson
Big Data for each one of us
The Vanishing Pattern: from iterators to generators in Python
Finite State Machines - Why the fear?
Using Cascalog to build an app with City of Palo Alto Open Data
How we built our community using Github - Uri Cohen
Ad

Similar to Android is client Java (20)

PPT
PDF
Day 1 Android: Before Getting Started
PDF
How Android is different from other systems – An exploration of the design de...
PPT
PPTX
Android before getting started
PPT
Android presentation
PDF
Android
DOCX
Android..overwiew
PDF
Oracle Vs Google
PDF
Opening slides-1592541
PPTX
Introduction to Android Development: Before Getting Started
PDF
Ch1 hello, android
PDF
Ben Pashkoff - java embedded - 24mai2011
PDF
Introduction to android
PPTX
Vijay android ppt
PPT
Maddy android
PPTX
Android application development
PPT
Android 1
PPT
Android123
DOCX
Android
Day 1 Android: Before Getting Started
How Android is different from other systems – An exploration of the design de...
Android before getting started
Android presentation
Android
Android..overwiew
Oracle Vs Google
Opening slides-1592541
Introduction to Android Development: Before Getting Started
Ch1 hello, android
Ben Pashkoff - java embedded - 24mai2011
Introduction to android
Vijay android ppt
Maddy android
Android application development
Android 1
Android123
Android

More from OSCON Byrum (20)

PDF
OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield
PDF
Protecting Open Innovation with the Defensive Patent License
PDF
Open Source Automotive Development
PDF
Distributed Coordination with Python
PDF
An overview of open source in East Asia (China, Japan, Korea)
PDF
US Patriot Act OSCON2012 David Mertz
PPTX
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
KEY
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
PDF
Declarative web data visualization using ClojureScript
PDF
Using and Building Open Source in Google Corporate Engineering - Justin McWil...
PDF
A Look at the Network: Searching for Truth in Distributed Applications
PPT
Life After Sharding: Monitoring and Management of a Complex Data Cloud
PDF
Comparing open source private cloud platforms
PDF
State of the Art Web Mapping with Open Source
PDF
Building an Ecosystem of FLOSS to Educate Students with Disabilities
PPTX
Android Security Essentials
PPTX
How to Design for the Future - Cross Channel Experience Design
PPTX
Harnessing the good intentions of others for your oss project
PDF
Introduction to android testing - oscon 2012
PDF
The Art of Social Media Analysis with Twitter & Python-OSCON 2012
OSCON 2013 - Planning an OpenStack Cloud - Tom Fifield
Protecting Open Innovation with the Defensive Patent License
Open Source Automotive Development
Distributed Coordination with Python
An overview of open source in East Asia (China, Japan, Korea)
US Patriot Act OSCON2012 David Mertz
OSCON 2012 US Patriot Act Implications for Cloud Computing - Diane Mueller, A...
BodyTrack: Open Source Tools for Health Empowerment through Self-Tracking
Declarative web data visualization using ClojureScript
Using and Building Open Source in Google Corporate Engineering - Justin McWil...
A Look at the Network: Searching for Truth in Distributed Applications
Life After Sharding: Monitoring and Management of a Complex Data Cloud
Comparing open source private cloud platforms
State of the Art Web Mapping with Open Source
Building an Ecosystem of FLOSS to Educate Students with Disabilities
Android Security Essentials
How to Design for the Future - Cross Channel Experience Design
Harnessing the good intentions of others for your oss project
Introduction to android testing - oscon 2012
The Art of Social Media Analysis with Twitter & Python-OSCON 2012

Recently uploaded (20)

PDF
Empathic Computing: Creating Shared Understanding
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Machine learning based COVID-19 study performance prediction
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
A Presentation on Artificial Intelligence
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
Empathic Computing: Creating Shared Understanding
sap open course for s4hana steps from ECC to s4
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Programs and apps: productivity, graphics, security and other tools
The Rise and Fall of 3GPP – Time for a Sabbatical?
Machine learning based COVID-19 study performance prediction
Network Security Unit 5.pdf for BCA BBA.
Spectral efficient network and resource selection model in 5G networks
Encapsulation_ Review paper, used for researhc scholars
A comparative analysis of optical character recognition models for extracting...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
A Presentation on Artificial Intelligence
MIND Revenue Release Quarter 2 2025 Press Release
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
Assigned Numbers - 2025 - Bluetooth® Document
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Unlocking AI with Model Context Protocol (MCP)

Android is client Java

  • 4. Android is client Java Can't we all just get along?
  • 5. Tablet devices, and mobile devices in general, are revolutionizing IT
  • 6. It is practical to treat Android's Java runtime environment as separate from Android
  • 7. When we say “Android is client Java” that is a more-general statement than, say, “Objective-C is a mainstream language”
  • 8. Client Java was... AWT Swing SWT JavaFX Qt bindings Etc.
  • 9. Step1: “Write once, run everywhere” Step 2: Convince everyone this is a good idea Step 3: ?????
  • 10. Step1: Make a really appropriate mobile managed language runtime Step 2: Watch ISVs write 200,000+ apps
  • 11. I'm good enough, I'm smart enough, and doggone it, people like me!
  • 12. The recipe for modern smartphone OSs: Linux or other embedded UNIX-like OS Managed language runtime Full-featured browser
  • 13. Examples: iOS Android Windows Phone
  • 14. Partial: Meego – more like Linux-goes-mobile Bada – C++ app runtime and APIs
  • 16. Real multi-processing – multiple VM instances Low memory overhead per instance Fast launch
  • 17. Share-able data heap – copy-on-write Save/restore component and process state
  • 18. Security benefits from true multi-processing Process per app UID per publisher Effective sandboxing of multiple publishers
  • 19. VM efficiency for mobile Smaller bytecode Faster bytecode
  • 20. Mobile-tuned JIT compiler Much less CPU/power- intensive than previous JIT compilers Compiles much less code Relies on efficiency of non- compiled code
  • 21. Android is a really good, mature client Java, and far ahead of other managed language runtimes for mobile devices
  • 22. So it is reasonable to want the Android application runtion on another platform, but can you get it without diluting the advantages with virtualization, emulation, hypervizors, etc?
  • 24. Why?
  • 26. Here comes another guy prophesying the end of the PC era
  • 27. Plummeting! Source: Hitslink
  • 28. Why believe it this time?
  • 29. The dominance of PCs in IT is artificial PCs were... Personal – you own it A revolution Empowering to individuals
  • 30. Some people need PCs Some people need this stove
  • 33. So why did all the alternatives fail?
  • 34. The economics of PC manufacturing crushed all challengers Tablets are “large smartphones” - they inherit the economics of smartphones
  • 35. Tablets and touch make everything easier Cheaper to support Tablets can support legacy apps through desktop virtualization Tablets are a great delivery vehicle for Web apps
  • 36. A new revolution in enterprise collaboration and communication
  • 42. Java is a good language Android Java is the best managed language runtime for mobile devices
  • 43. Tablets are an IT revolution Tablets will become the basis of a new collaborative work and communications paradigm Java can be a big part of this revolution
  • 44. There will be lots of Android devices, but... You can treat Android as a runtime separately from Android OS, if you need or want to