Saturday 29 September 2007

Mobile Camp London: S60 Web Widgets -- Petro Soininen, Nokia

See the whole presentation here.
  • Nokia providing open source Browser Control so can access web content easily from within Symbian apps
  • Now providing Widget Runtime on top of the Browser Control
  • Widgets run and feel like a native app — appear as application icons in interface
  • Not necessarily dependent on network access
  • Load their own instance of the WebKit engine (though some parts may be shared)
  • One widget displayed at a time (full screen)
  • Widgets can work in landscape or portrait
  • Can be assigned to soft keys or shortcuts on the idle screen
  • No means to save persistent information beyond reboot at the moment
  • Customisable standby screen coming some time next year — and so widgets at idle

Plans for the future:

  • Want to use platform capabilities
  • Location, PIM, media, standby screen, etc
  • Security model is the sticking point at the moment
  • Plans will be communicated next year

Widget internals:

  • Recommended icon for app is 88x88 PNG
  • Folder for widget UI: private/10282822/${Identifier}
  • Info.plist — XML properties file but different properties to a dashboard widget…

How do you update widgets automatically?

  • Can launch normal browser from within a widget and download a new package to install (just like J2ME)

Javascript API

  • setPreferenceForKey / preferenceForKey
  • openApplication(Uid, param)
  • setDisplayLandscape/Portrait
  • setNavigationEnabled — hides/shows cursor
  • onhide / onshow callbacks
  • menu object available to manipulate, with menuItems — allows access to standard S60 device menu
  • system info service API provides access to memory, network, lights, vibration, etc, available as a browser plugin
    • Not supported in standard browser context, only in widget runtime
    • Does provide events — e.g. onchargelevel (don’t know if they fire in the background…)
    • system info API needs to be first embedded object in HTML
    • javascript to access local info needs to be included in widget (not remote)

development process:

  • general development in web browser
  • testing in S60 3rd Edition FP2 emulator (beta ETA first half of October)
  • testing on a real device, need custom firmware for the moment… (Nokia 6292)

installation & packaging:

  • zip package with extension .wgz
  • mime-type: x-nokia-widgets (isn't that missing something?)

misc

  • Nokia use Phone Screen over Bluetooth to demonstrate phone on laptop screen
    • appears different from Devlex PhoneScreen (app on laptop appears to be Java) — has resolution doubler
    • Not available outside of Nokia... :-(
  • Developer Workshop in Finland October 30th (details to be published on forum.nokia.com)

No comments: