JIL on Android: Thoughts

The Android release of the JIL Widget Manager came out a little while ago with support for Android 1.6 and 2.1. You can download the Android (or Nokia S60) runtime here, listed under “Widget Run-Times”.


Installing the widget manager and runtime is pretty straightforward. You download the .apk file to your sd card, then install it as an Android app. (Installed as the “Apps” application). From there you can open .wgt files (using a file browser like Astro) and promptly install them with the widget manager. Configuration is more flexible on this runtime as it seems able to install JIL 1.2.x and 1.0 based widgets as well as Opera based widgets.

Now you are rocking the JIL widget manager on Android, time to see what it can do.

First Thoughts

The Android version of the JIL runtime and widget manager seems to be built upon Opera Mini’s widget manager with extra support for JIL baked in. This also means it’s a presto based rendering engine (unlike LiMo’s widget manager). Webkit would of been a much better renderer to go with in my honest opinion (like on LiMo’s runtime renderer), but building upon and leveraging the Opera runtime it can provide some extra capabilities for developers such as remote debugging (with Opera 9.64) and a baked in widget manager.

All in all I’m still very giddy to get my hands on this upcoming widget manager.

Performance and Usability

Keep in mind this is a debug enabled release and is still being developed and extended. Performance seems to vary with widgets sometimes taking way too long to load, then again loading nice and fast. Aside from that, testing on a Nexus One with Android 2.1, the UI seems responsive and is, for lack of a better word browser like. Although I must nitpick the fact that scrolling stops as soon as you lift your finger off the screen, not allowing for that “flick like” scrolling on native applications.

Feature Support

Accelerometer, preferences and launching applications seem to function to spec.

*Update* So does Geo positioning (if your GPS is turned on!).

CSS media queries do work but I found that on the Nexus One (at least) the widget manager calculates the screen PPI as ~240 (media queries catch at 240 min PPI). I can only speculate on why the PPI is different. However this does make creating media queries with confidence difficult, as there is no definitive viewport resolution/measurements. Which also means any device specs can not be used as a proper reference.

However, others have done a lot more in depth testing and there seems to be quite a bit of bugs/issues with the current (debug) release. Have a look at the http://jil.org forums to keep up to date on the latest developments/bugs.

The Bottom Line

Now that Vodafone support is starting to stretch even further across multiple platforms (including Android, Symbian and LiMo) it’s a huge win for Vodafone (and JIL) as well as developers. Just the reach of Android devices in the wild proves a big step forward for JIL platform adoption and the mobile widget movement itself.

I’m looking forward to future releases of the Android runtime and shall be on the lookout. If you want to as well a great blog to keep in your feeds is Vodafone’s mobile widget developers blog where announcements are posted including runtime releases.

* Update *

Upgraded my Nexus One to Android 2.2 Froyo and (as noted by Vodafone) there is no support. Though I do hope there is support asap (all other apps including Opera Mini work), as a lot of new devices are getting updated or coming out running 2.2 stock.

About these ads

4 Responses

  1. On the PPI of the Nexus One: I don’t think it can be reported more accurately on Android. You will only get 120 ppi (low), 160 ppi (mid) or 240 ppi (high) since the OS reports only that to the Widget Manager.

    • Thanks for the clarification Daniel. So do you mean that Android in general can only return one of those 3 numbers back for PPI??? Seems odd…

      A good parallel comparison of this, we think, would be PPK’s blog post. http://www.quirksmode.org/blog/archives/2010/04/a_pixel_is_not.html

      As developers we shouldn’t need to worry about that. What is best is a streamlined and succinct way of managing scalable applications just as they are in a mobile browser.

      Since this is the case, the runtime should use the same behaviour as the mobile browsers. We are building glorified web apps here :-)

      What we’re trying to say is. Feel free to use virtual or real pixels. Whatever the case, the method used by mobile browsers should be the same as the one used by the widget runtimes. As a developer I want to write the same bit of code, either using @media selectors or programatically sizing DOM elements and be able to use that code in both HTML apps running a mobile browser as well as in my widgets running in the various runtimes.

      We need to do some more testing but the concept of mobile widgets is to be platform and device agnostic! Ideally every mobile OS and device should report PPI in the same way. If not then that is a big issue. At a minimum, we would need the differences between runtimes as well as the idiosyncratic differences between the mobile devices themselves to be published and readily available to developers. It seems that these days, we’re all mostly feeling around in the dark looking for these answers :-)

      Dan / Brent

  2. I was trying to follow this “From there you can open .wgt files (using a file browser like Astro) and promptly install them with the widget manager.”
    But, I was not able to figure out how exactly to use Astro File Manager to “open” a .wgt file on SD card. Would you please help? Appreciate!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

%d bloggers like this: