Sony Ericsson Makes Web Application Play

Published by at

Sony Ericsson has introduced WebSDK, offering developers cross-platform web applications development for its latest Symbian and Android devices. So, what is Sony Ericsson's offering and how does it measure up?

 

With most major smartphone manufacturers jumping on the web development band-wagon, it’s no great surprise to find Sony Ericsson joining the party. To enable web widget development, Sony Ericsson has released a set of tools as WebSDK. This toolset provides four components: 

  • A cross-platform framework, derived from the open source PhoneGap project.
  • A simulator, in which applications can be tested, with simulation provided for a number of phone features, such as GPS and accelerometer.
  • A packaging tool (for the deployment of applications on Android devices).
  • Emulator skins for the Android and S60 emulators.

The obvious omission from this list is an editor – recent offerings from Nokia and Samsung have wrapped their web application tools into an IDE. The advantage of Sony Ericsson’s approach is that it doesn’t force developers to adopt a web tool with which they are unfamiliar or simply don’t like. The disadvantage is that developers don’t get any integrated help or code hinting.

The cross-platform framework’s APIs provides access to device status and application data. The key features provided are: 

  • GPS co-ordinates,
  • Accelerometer co-ordinates.
  • Camera access.
  • Contacts data.
  • Media playing.
  • Vibrator activation.

In addition, there are a number of miscellaneous APIs providing for alert boxes, beeps, and obtaining a device’s IMEI number, among others.

Some may consider the APIs are fairly basic, for example the contacts API can read a device’s contacts only; there are no options to update or delete information. 

For Symbian devices the APIs are delivered as a JavaScript library. This library needs to be included in the final application. Examining this file reveals a few undocumented APIs. These additional APIs enable sending of an SMS message, reading and writing files, displaying pins on a map in the native mapping application, making phone calls, and blinking an LED. The SMS API is demonstrated in a small application included in the SDK. I’ve have, however, not attempted to confirm any of the undocumented features work.

The simulator is an Adobe AIR application. When run for the first time, a default application shows accelerometer and location data as well as activating the beep and vibrate functions. In addition, two demonstrations show how the accelerometer can be used as a game controller.

The PhoneGap simulator

In addition to the phone emulation, a second panel provides features to open applications and control the simulation. Controls include display orientation, device orientation (to simulate the accelerometer), and location.

There are controls to vibrate the device and issue a beep, for reasons which are not entirely clear. A disabled button whose icon suggests camera simulation in a future version. There is also a simple debugger, based on Firebug.

 Simulator controls

It’s also possible to test applications in the S60 5th Edition and Android emulators. To give these more realism, skins are provided to give each emulator the look of the appropriate Sony Ericsson device.

When developers have completed coding and testing a widget, the deployment method varies between Symbian and Android.

As the Symbian implementation leverages S60 WRT, packaging an application for deployment is quite straightforward (and will be familiar to anyone who has created a WRT widget). It’s simply a case of adding the info.plist file and zipping the code into a file with the extension wgz.

The process for packaging a web application for Android is a little more complex, requiring the code to be built and signed as an Android application.

Does this mean S60 WRT widgets can now run on Sony Ericsson’s Android devices? The answer will depend on the extent to which a widget uses the WRT 1.1 API to access device information and the willingness of developers to switch to the WebSDK APIs. The flip side is whether a “pure” WebSDK widget can run on any S60 5.0 devices. Running the PhoneGap demonstration widget on a Nokia N97 and Samsung 8910 offered mixed results. Location, contacts, SMS, storage, and vibrate worked on both devices. The accelerometer and sound worked on the Nokia N97 but not on the Samsung 8910, while the camera feature didn’t work on either device.

So it would appear, assuming the WRT widget’s functionality is suitable, there is some scope for using Sony Ericsson’s APIs to address a broader range of S60 devices and take a WRT widget to Android.

Overall Sony Ericsson has created a useful set of tools in WebSDK and certainly outdone its competitors in several of the features developers can test on a PC with the simulator. As a solution to offering a cross-platform option for Sony Ericsson’s smartphone portfolio it should work well.

To encourage developer, Sony Ericsson is running a competition with a $4,000 first prize plus a trip to the 2009/2010 Mavericks Surf Contest. few details are available, but more information is promised here.