Java vs. Android APIs

Java vs. Android APIs

Summary: Google’s mobile phone platform, Android, supports a relatively large subset of the Java Standard Edition 5.0 library. Some things were left out because they simply didn’t make sense (like printing), and others because better APIs are available that are specific to Android (like user interfaces). This article lists what is and is not included.

SHARE:

AndroidGoogle's mobile phone platform, Android, supports a relatively large subset of the Java Standard Edition 5.0 library. Some things were left out because they simply didn’t make sense (like printing), and others because better APIs are available that are specific to Android (like user interfaces). This article lists what is and is not included.

[ Read: More coverage of Android ]

Supported The following standard packages are supported in Android as of the latest release candidate. Consult the Java 2 Platform Standard Edition 5.0 API documentation for information on how to use them.

  • java.io - File and stream I/O
  • java.lang (except java.lang.management) - Language and exception
  • support
  • java.math - Big numbers, rounding, precision
  • java.net - Network I/O, URLs, sockets
  • java.nio - File and channel I/O
  • java.security - Authorization, certificates, public keys
  • java.sql - Database interfaces
  • java.text - Formatting, natural language, collation
  • java.util (including java.util.concurrent) - Lists, maps, sets, arrays, collections
  • javax.crypto - Ciphers, public keys
  • javax.net - Socket factories, SSL
  • javax.security (except javax.security.auth.kerberos, javax.security.auth.spi, and javax.security.sasl)
  • javax.sound - Music and sound effects
  • javax.sql (except javax.sql.rowset) - More database interfaces
  • javax.xml.parsers - XML parsing
  • org.w3c.dom (but not sub-packages) - DOM nodes and elements
  • org.xml.sax - Simple API for XML

Not supported These packages, normally a part of the Java 2 Platform Standard Edition, are not supported by Android.

  • java.applet
  • java.awt
  • java.beans
  • java.lang.management
  • java.rmi
  • javax.accessibility
  • javax.activity
  • javax.imageio
  • javax.management
  • javax.naming
  • javax.print
  • javax.rmi
  • javax.security.auth.kerberos
  • javax.security.auth.spi
  • javax.security.sasl
  • javax.swing
  • javax.transaction
  • javax.xml (except javax.xml.parsers)
  • org.ietf.*
  • org.omg.*
  • org.w3c.dom.* (sub-packages)

Third party libraries In addition to the standard libraries listed above, The Android SDK comes with a number of third-party libraries for your convenience.

  • org.apache.commons.codec - Utilities for encoding and decoding
  • org.apache.commons.httpclient - HTTP authentication, cookies, methods, and protocol
  • org.bluez - Bluetooth support
  • org.json - JavaScript Object Notation

Topics: Open Source, Android, Google, Software Development

Ed Burnette

About Ed Burnette

Ed Burnette is a software industry veteran with more than 25 years of experience as a programmer, author, and speaker. He has written numerous technical articles and books, most recently "Hello, Android: Introducing Google's Mobile Development Platform" from the Pragmatic Programmers.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback

1 comment
Log in or register to join the discussion
  • [Add a non-supported java API to Android]

    Hi Mr Burnette,

    Thank you for this interesting article.
    I would like to use java.lang.management API in an Android application. But it is not supported in Android platform. I wonder can I find a way to add it to be supported. Any help please.

    Best regards
    Ez Lahcen