Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: EE 1.3.1.GA_P01
    • Component/s: Containers
    • Labels:
      None
    • Environment:
      ICEmobile

      Description

      Geolocation requirements vary by application:
        1. a single approximate value when the page is loaded
        2. a current more accurate value when the user interacts
        3. a history of locations
        4. periodic update of current location at the server

      1. and 2. are currently supported with the mobi:geolocation component. 3. can be implemented as a background task with a batch upload of the geolocation history. 4. deviates from the web model since the periodic update may be expected to occur even if the web browser is not active on the device.

      However, some users may regard 4. as a privacy violation and be willing to provide location updates only when the web application is visible. This could be implemented with a periodic submit and the current mobi:geolocation component.

      To provide continuous background updates would be a container feature and require investigation on each mobile platform.
      1. geo.jsp
        0.1 kB
        Ted Goddard
      2. geospy.jsp
        5 kB
        Ted Goddard

        Activity

        Hide
        Ted Goddard added a comment -

        Consider for ICEmobile 1.3.

        Show
        Ted Goddard added a comment - Consider for ICEmobile 1.3.
        Hide
        Steve Maryka added a comment -

        An initial prototype of a location service that can be accessed over cloud push mechanism has been developed. We must investigate if iOS and BB devices can provide a similar service.

        Show
        Steve Maryka added a comment - An initial prototype of a location service that can be accessed over cloud push mechanism has been developed. We must investigate if iOS and BB devices can provide a similar service.
        Hide
        Ted Goddard added a comment -

        mobi-alert has been updated to accept location updates from ICEmobile-SX.

        Show
        Ted Goddard added a comment - mobi-alert has been updated to accept location updates from ICEmobile-SX.
        Hide
        Steve Maryka added a comment -

        Initial support for geospy has been added to android support, and checked in at svn 38033.

        It supports parameter strategy=significant|continuous|stop.

        For android these translate to:

        significant = low accuracy, continuous, delta t = 1min, delta d = 100m
        continuous = high accuracy, continuous, delta t = 15sec, delta d = 25m

        These settings are somewhat arbitrary and should be configurable from the application level.

        Show
        Steve Maryka added a comment - Initial support for geospy has been added to android support, and checked in at svn 38033. It supports parameter strategy=significant|continuous|stop. For android these translate to: significant = low accuracy, continuous, delta t = 1min, delta d = 100m continuous = high accuracy, continuous, delta t = 15sec, delta d = 25m These settings are somewhat arbitrary and should be configurable from the application level.
        Hide
        Ted Goddard added a comment -

        geoSpy on iOS now supports properties and duration:

        <a id="track" type="button" class="whiteButton bridgeItBtn" onclick="bridgeit.geoSpy('tracker','handleSpy', {postURL: window.serviceHub + '/geospy', parameters: {strategy:'significant',duration:1,_jguid:jguid}});">Start Tracking</a>

        Property names starting with _ will be added to the geoJSON POST with the _ removed. duration is specified in floating point hours.

        Show
        Ted Goddard added a comment - geoSpy on iOS now supports properties and duration: <a id="track" type="button" class="whiteButton bridgeItBtn" onclick="bridgeit.geoSpy('tracker','handleSpy', {postURL: window.serviceHub + '/geospy', parameters: {strategy:'significant',duration:1,_jguid:jguid}});">Start Tracking</a> Property names starting with _ will be added to the geoJSON POST with the _ removed. duration is specified in floating point hours.
        Hide
        Ted Goddard added a comment -

        geoJSON properties is a useful feature since the location service will not make use of sessions (but the properties can include a user ID).
        The current demo assigns a GUID (named jguid) in the browser and maintains it in local storage for persistence. The only requirement of the native implementation is to detect _property and set properties

        {property: value}

        in the JSON POST.

        Show
        Ted Goddard added a comment - geoJSON properties is a useful feature since the location service will not make use of sessions (but the properties can include a user ID). The current demo assigns a GUID (named jguid) in the browser and maintains it in local storage for persistence. The only requirement of the native implementation is to detect _property and set properties {property: value} in the JSON POST.
        Hide
        Steve Maryka added a comment -

        Android implementation of jguid and duration parameters complete. svn 38293.

        Show
        Steve Maryka added a comment - Android implementation of jguid and duration parameters complete. svn 38293.
        Hide
        Steve Maryka added a comment -

        With the continuous nature of geospy, it will typically outlive the dispatch cycle of BridgeIt. This adds complications if multiple applications are attempting to use the feature at the same time, and with different configuration. BridgeIt need to be able to service multiple independent web apps. The initial plan is to support independent geospy services keyed on upload URL.

        Show
        Steve Maryka added a comment - With the continuous nature of geospy, it will typically outlive the dispatch cycle of BridgeIt. This adds complications if multiple applications are attempting to use the feature at the same time, and with different configuration. BridgeIt need to be able to service multiple independent web apps. The initial plan is to support independent geospy services keyed on upload URL.
        Hide
        Steve Maryka added a comment - - edited

        svn 38542: Android geospy support now uses independent location listeners based on upload URL. This means a single BridgeIt instance can support multiple web applications in parallel.

        Show
        Steve Maryka added a comment - - edited svn 38542: Android geospy support now uses independent location listeners based on upload URL. This means a single BridgeIt instance can support multiple web applications in parallel.
        Hide
        Ted Goddard added a comment - - edited

        This feature is now required by the mobi:geotrack component in ICEfaces so must be added to the Android implementation:

        • Property names starting with _ will be added to the geoJSON POST with the _ removed.
        Show
        Ted Goddard added a comment - - edited This feature is now required by the mobi:geotrack component in ICEfaces so must be added to the Android implementation: Property names starting with _ will be added to the geoJSON POST with the _ removed.
        Hide
        Patrick Corless added a comment -

        Marking as resolved.

        Show
        Patrick Corless added a comment - Marking as resolved.

          People

          • Assignee:
            Steve Maryka
            Reporter:
            Ted Goddard
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: