akvo / akvo-flow-mobile

Akvo Flow app
GNU General Public License v3.0
18 stars 16 forks source link

Image Geotagging #402

Closed ichinaski closed 8 years ago

ichinaski commented 8 years ago

Issue described at https://github.com/akvo/akvo-product-design/issues/74

ichinaski commented 8 years ago

Test plan:

TODO:

rumca commented 8 years ago

Might be the intended functionality, but I've set up a test survey with two picture questions which can result in slightly unexpected behaviour:

ichinaski commented 8 years ago

Thanks @rumca

The reason seems to be the camera app taking over, which stops any location updates in FLOW (this is explicitly requested to avoid battery drains when the app is not in use)

After discussing the issue with @muloem we decided to run the location updates for up to one minute, rather than relying on system callbacks.

This same scenario is also affecting Geo Questions.

ichinaski commented 8 years ago

I've implemented a more generic location listener with the following characteristics:

The idea is to replace both the Media and Geo questions' custom solutions, so they can use a more reliable interface, rather than implement the same behaviour in multiple places.

This helper class can easily be extended to support custom attributes (accuracy threshold, timeout settings, location sources, etc), though for now it just has the same settings we had in the GeoQuestion.

@muloem Since the main issue to address is to fix the defect described at https://github.com/akvo/akvo-flow-mobile/issues/402#issuecomment-182817743, perhaps we can use this utility in MediaQuestions for this release, and replace the GeoQuestion one for the next one.

rumca commented 8 years ago

fixes seem to look good :+1:

ichinaski commented 8 years ago

Response format serialization test plan (WIP)

Note: For the following test plans you'll need a monitoring form with media questions

App upgrade (start with an old version, eg v.2.2.3.1):

Synchronisation:

Regression checks:

rumca commented 8 years ago

Test plan passes as described.