Google Android update: videos, development group, blogs

android-emulator.jpg

Videos on Google Android development can be found here;
http://www.youtube.com/user/androiddevelopers

There’s also a Google Group community setup for developers; http://groups.google.com/group/android-developers

As far as “blog reactions” there has been a lot written on the release of this SDK;
Happy Birthday to Android and devphone.com
JavaLobby: Android is out, first looks
Slashdot: Google’s Android Cellphone SDK Released
Comic: Android SDK reactions
Android SDK, Demo Video and Contest

Seems like overall reaction to the SDK is mainly positive. But it’s interesting to see in the Google Group there’s a lot of “why can’t I develop in X technology with Android, type of threads. Obviously, not everybody is happy with the choice of Java as the development language for this platform. Luckily for some of these people, it should be possible to code for an Android enabled phone with one of the many JVM compatible languages out there.

Update (Packages included in Android)

Packages included in the Android SDK.
http://code.google.com/android/reference/packages.html

One interesting thing to see is the Java SE APIs that are included and the ones that are not.

You can see the main language APIs for java.lang, java.lang.reflect, etc. Also included are the main util packages and network packages; java.util, java.io, java.nio.*. The Java 5 concurrency packages are there too, in addition to the Java 5 annotation package too.

What’s not included is anything for the SE UI; java.awt.*, javax.swing.*. There’s also no CORBA or RMI packages of course.

I’m glad to see a lot of the standard SE APIs, at one point I thought Google was not going to include these at all, it’s great to see they are there. It’s unfortunate there are no SE graphics APIs, this means no JavaFX for Android in my view. I guess you could still do some JFX apps but you’d have to map the graphics to the Android rendering API. However, given JFX relies on Java SE this causes a problem.

Also listed a junit packages … are these really included in the runtime? Not sure if that makes sense.

Listed are some Apache Commons packages, like codec (very useful) and the apache http client. Note that Java’s HttpURLConnection package is still there, so there are actually 2 HTTP client implementations in Android.

You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

6 Comments »

 
  • [...] mailroomuk@zdnet.com (Peter Judge) wrote an interesting post today onHere’s a quick excerptBut it’s interesting to see in the Google Group there’sa lot of “why can’tI develop in X technology with Android, type of threads. Obviously, not everybody is happy with the choice of Java as the development language for this platform. … [...]

  • paulo says:

    I'm actually glad that swing is not included. Swing component model is great, but it needs an update, such as a real view – model separation and features like css, animation. You know what would be great? If they had included the fuse project in there. Currently its only for swing or swt but as Romain Guy works for google i'm sure that sweet dependency injection framework could be included.

  • paulo says:

    And some utility classes for dealing with those anoying try catch stupidities. For example (my poison) :

    /**

    * Close closeables. Use this in a finally clause.

    */

    public static void close(Closeable… closeables) {

    for (Closeable c : closeables) {

    if (c != null) {

    try {

    c.close();

    } catch (Exception ex) {

    ex.printStackTrace();

    }

    }

    }

    }

    and

    /**

    * If possible reads an object, if not tries to instanciate the

    * object with the given Callable. This allows lazy instantiation.

    * If an exception occurs in the lazy instantiantion it returns null.

    * Remember that if using Externalizable transient fields/static scopes

    * fields ARE initalized. The use of the default constructor assures that.

    * The order of inicialization is:

    * Externalizable : default constructor, readExternal

    * Serializable : first non-serializable super class default constructor,

    * readObject

    * So with externalizable you need to be carefull not to use automatically

    * assigned fields of the class in the constructor, that will be read back,

    * and in serializable, replace the constructor.

    */

    public static T readObject(String objectLocation, Callable t) {

    ObjectInputStream s = null;

    try {

    s = new ObjectInputStream(new BufferedInputStream(new FileInputStream(objectLocation)));

    return (T) s.readObject();

    } catch (Exception ex) {

    try {

    return (T) t.call();

    } catch (Exception e) {

    e.printStackTrace();

    }

    } finally {

    close(s);

    }

    return null;

    }

    If you'd need to reuse the stream you could pass the stream instead and remove the finally to outside and close there.

  • Saptarshi says:

    The reason they dont have the SE graphics because they wanted Android to be working on low-end handsets. Swing is pretty heavy and would have been problematic for low-end handsets.

    JavaFX (mobile or otherwise) is not open-source and Google's Android is open-source. Although some handset manufacturers could add whatever they want to in Android because of the flexible Apache license!

  • Augusto says:

    Saptarshi;

    "The reason they dont have the SE graphics because they wanted Android to be working on low-end handsets. "

    What is so heavy weight about Graphics2D, they have the same functionality enabled (but different API) for their graphics. They also have OpenGL support, which is way more complicated than what Graphics2D provides.

    "JavaFX (mobile or otherwise) is not open-source and Google’s Android is open-source. "

    JavaFX is supposed to become open source, just like Android. Right now we don't have the source to the Android SDK either!

 

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

 

WP SlimStat