Version 26 (modified by Fran Boon, 14 years ago) ( diff )


Blueprint for Mobile Clients

We want clients on Mobile devices to be able to talk to Sahana Eden servers.

The simplest way to do this is to provide a layout for the web application suitable for smaller screens: BluePrintCSS

Ideally, though, they should have local storage for use completely offline & then be able to sync back to the server using whatever connectivity becomes available:

Using the open XForms standard means that we can support handsets using both Android & J2ME.

XForms editor:

XForms can be submitted using SMS by including the encoding format within the XForm so that client & server agree on the encoding:


OpenDataKit have a suite of tools to use on Android.


  • Get the jaxdroid work on Sahana compatibility merged into ODK Trunk
  • Send Images
  • Send GPS Coordinates
    • GeoTagger is a sample Form for ODK which can be used as a template for what needs to be produced by controllers/ from location_id & image_id fields.
      • We also need controllers/ to be able to parse the form back.
      • Currently the ODK Collect client seems to only be able to use GPS for location rather than a wireless fix, which could use fixing (Sahana's Location should have the lower accuracy marker: either source or ce fields).
  • SMS: There are 2 APIs for sending SMS. 1 of which automatically splits up larger messages into multi-part SMS.
    • NCSU have proeduced some initial ODK Collect code for SMS


Documentation on the current implementation is here:

  • This needs updating to the latest version of JavaRosa

JavaRosa is a fast-developing framework which uses XForms & J2MEPolish:

This supports using Mesh4j to do synchronisation via SMS:


Another XForms/J2MEPolish client (Xfolite):

KUIX can be used to develop lightweight applications which work across may handhelds & forms can be customised easily via XML/CSS:

Old, un-maintained J2ME client for the PHP back-end, which just uses XML-RPC (=> requires Internet):


Sahana Software Foundation have a developer license which can be used by anyone interested in developing this.


Sencha Touch

Cross-platform (Android/iPhone) HTML5 environment based on ExtJS


Adding touch support to OpenLayers:

Taking the Map offline:

Other projects



Note: See TracWiki for help on using the wiki.