-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

My Android application basically allows to record geotagged notes,
with precision (entering exact information, in my case the information
about an observed bird species) and in the shortest possible time. I
am a bit worried about the battery performance of the GPS thing: for
instance, I've measured that MotoNav (the Motorola Navigator available
with the Droid) drains the battery in about two hours of use. I first
thought it was a matter of other things (e.g. the 3D rendering of the
terrain), but disabling it doesn't seem to make a big difference. My
application should be available for use en plein air for several hours
(possibly the whole day), so it must save the battery. So my current
design keeps the GPS off and starts / stop it only when a new
geotagged note is to be entered (optionally, when you get the GPS
fixture, the Geocoder is used to retrieve the location name).

The first implementation, when tested of the field, was problematic.
The workflow was a sequence of screens "get the GPS location" -then-
pick-the-species (which is done by a couple of screens on its own).
Unfortunately, having to turn on the GPS every time is a pain, since
it takes a few seconds and slows the whole thing down. Things seem to
be much better after a change, in which I reversed the sequence of
screens, but turning on the GPS immediately: in this way, the fixture
is computed in background while the user picks the species, and it
seems that in 90% of cases when you get to the final screen the
coordinates are already there. I'd like to know whether I have some
timing guarantee: that is, supposing that I'm in a place with a good
reception of at least 4 satellites, is there a guaranteed max. amount
of time for the sequence "turn the GPS on and get a fixture" to
complete? While I can't assume the AGPS is always available (there
could be no mobile radio signal), most of times you have collected
another fixture in the past few minutes and didn't move too far from
the past location, and I suppose that the GPS software is able to
remember the latest position, which AFAIK helps a lot in fast
computing the new fixture.

***

Second point, about the Geocoder. For practical purposes in my typical
scenarios, the unique and only geocoder available (which of course I
bet talks with the Google geocoder) is useless, because you often
either don't have a mobile connection, or the radio signal is so weak
that it takes a long time to get results (I'm always puzzled in facing
with the common assumption of most technology providers that
everything that you'll do with a smartphone will be in a urbanized
area with excellent radio signal). Furthermore, the Google geocoder is
good in some circumstances, getting a meaningful name of the location,
while more often it only provides a generic (and useless) "Province of
XXX"; and of course doesn't provide meaningful information in the
context, such as "Observatory #5 in the FooBar Wildlife Sanctuary" - a
thing that can be only implemented as user-provided data.

Well, the obvious solution is to use another geocoder (I think I
should be able to use my stuff from forceTen, which includes a
Geonames geocoder and the capability of plugging others, so I could
aggregate all the available information). I wonder whether any
existing FLOSS package for managing user-provided locations exists. I
must say I am surprised that Android doesn't offer this feature
out-of-the-box given the strong geo-characterization of Google, at the
point that I've a strong feeling that I was unable to find the right
stuff in the documentation... Am I missing something?

Thanks.

PS I'm referring to Android v1.6, which is the platform I'm targetting.

- -- 
Fabrizio Giudici - Java Architect, Project Manager
Tidalwave s.a.s. - "We make Java work. Everywhere."
java.net/blog/fabriziogiudici - www.tidalwave.it/people
[email protected]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.14 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkvWqskACgkQeDweFqgUGxfWrQCfbaYaFdnA6mofB6v8Ye4KHBRC
GzMAn2je9KzmnYQGtDqn1UL/+VGZDBlO
=WgTi
-----END PGP SIGNATURE-----

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to