RE: Geofencing API proposal

Hi Marjin,

 

“Something like that might be useful, although I'm not quite sure of the implications (or usecases) of exposing such an event. What does it mean for the Location to be unknown?”

 

One use case is “Family Tracker” services you can find on App Store. Parents may want to know if their kids are in school, out of school, or unknown. Usually we want to know that event as soon as it happens.

 

“This also gets back to accuracy of location. If GPS location drops, but IP based location is still available, do you count that as unknown? And is "location is unknown" somehow different from "user disabled geolocation"? I think "user disabled geolocation" might actually be more useful than "location is unknown". 

 

There are many technologies that can be used to determine Geofence status. GPS and IP based location technologies are two of them. It is very common today to combine multiple technologies for location determination. I think “user disabled geolocation” might has implication on privacy or power, which could also be useful, but if it is in the context of geolocation API or Device Setting API will be something up to debate.

 

I also have concern of power consumption by geofence implementation. The motivation of geofence is “energy efficient” as also mentioned on Blink web page. A popular web application may choose to use geofence for “energy efficient” when they customize the content based on location of user; the web application won’t be able to use geofence API if it does not know if it is “energy efficient”, because once it starts to use it, those users with a device which does not have an “energy efficient” geofence implementation will drain out of battery quickly, it is not something a web application with a lot of users can try. Can you add an API to indicate if the geofence implementation is a HW based geofence or SW based geofence? HW based geofence will not wake up main App CPU unless there is a breach event thus typically it is “energy efficient”. SW based geofence usually have to often wake up main APP CPU and run GPS/WiFi/Cell tracking, etc., which usually is not “energy efficient”

 

Motivation

 

I checked out the blink page below. I am in agreement with the motivation stated on the page. If “energy efficient” is the main motivation, then do we need to let App know if the implementation is really “energy efficient”? A geofence solution can be implemented with poll/watch at OS level; having an App using such a solution without knowing the significant power difference will be against the purpose.

 

https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/_0boQVzUaXI

Motivation

This API will allow web applications to react to changes in the users location without having to poll/watch the position constantly (allowing the device to be more energy efficient). Essentially it allows web applications to do things based on physical proximity of the device to specific locations.

 

Regards

Stephen

Received on Friday, 19 September 2014 22:48:32 UTC