[whatwg] Geolocation - Browser usability issues with regards to asking user permission

I'm building a web-app that makes use of the Geolocation API. While
building my application, I've come across an issue with how browser
makers have implemented the Geolocation API.

Depending on the browser and device, permission will be asked either
in a bar across the top of the browser (Firefox and Chrome on the
desktop) or with a modal dialog (Safari on the desktop and on the
iPhone). At the moment, I don't have access to Chrome on an Android
device or access to Internet Explorer on Windows, so I can't tell you
how they implement the permissions dialog.

As the creator of a site that uses geolocation, these two different
implementations of the permissions dialog concerns me. In my tests
with users, I've noticed that with Firefox and Chrome, many users
don't notice the bar across the top and thus features of the web
application end up crippled because the app doesn't have access to the
user's location and this degrades the user experience.

As a web app developer, I have to either grin and bear this or I need
to spend extra development effort to create an absolutely positioned
window in the top righthand corner of the screen to call the user's
attention to the non-obvious geolocation permission dialog. To do this
I also need to browser sniff, since this absolutely positioned element
should only appear on browsers where the dialog is less-than-obvious.

The way I see it there are three possible solutions forward:

1) As a web app developer, I just deal with this.

2) The HTML5 specification defines how browsers should implement this
consistently --> either a bar across the top OR modal dialog box, but
not both. This isn't ideal either since there are arguments both for
and against both solutions. For webapps where most or all users are
likely to want to give the app permission for access to the additional
features, the non-obtrusive bar provides a worse user experience for
the webapp. With my app for example really only has value if we know
where the user is located. The user informs my app of their location
via the geolocation API or keying it it or they don't use my app at
all. In this latter case, I most certainly prefer the browser modal
dialog box approach.

3) Each browser chooses their default interface approach (bar or modal
dialog), but the Geolocation API specification allows for the webapp
developer to override this default. Those apps for which location is
essencial for the user experience can choose to always display a modal
dialog box before the user proceeds to use the webapp.  Those apps for
which it is not important, can opt for the bar across the top.

I'm sure there are other possible solutions, but the state of the
implementation insofar as the user experience is concerned needs work.
In addressing the privacy aspects of the user experience, we've
created a usability issue which needs to be addressed as well.

best,
Andrew


(P.S. I really don't know if this mailing-list was the best place to
raise the issues above, but since many engineers from all the browser
manufacturers watch this list, I figured it is as good a place as any
to raise these points)

Received on Wednesday, 6 April 2011 16:37:23 UTC