Location 542

From mn/ifi/inf5750
Revision as of 17:32, 5 November 2015 by Yarono@uio.no (talk | contribs)

Jump to: navigation, search

Project description

Android Tracker Capture

This project's goal is to improve upon the existing DHIS2-android applications by expanding their common SDK to include support for use of Google Maps. In the existing DHIS2-android apps location selection is limited to only capture the coordinates where the user is located, which features no map interaction at all. This project will implement functionality such as having a map based point-and-click coordinate selector for TrackCapture- and EventCapture apps, among others, so the user can specify coordinates without being in that location.

Where the DHIS2 android application previously have only utilized the on-device GPS by clicking a button for obtaining the user location and storing it, we want this button to open a Google Maps fragment with the ability to place markers that indicated the desired location. The map should be launched with a marker that point to the user's location by default, but which can be moved by clicking the map and be saved when the user clicks save. 

Your task is to implement a map based point-and-click coordinate selector for the existing applications. It is currently possible to capture coordinates using the on-device GPS, and by clicking on a button. This does however only allow for capturing the coordinates the user is currently located at. In some cases the coordinates the user wants to capture are not accessible in person perhaps. One example we have been given is inaccessibility due to crocodiles or thugs near Malaria infested mosquito breeding sites.

You are to integrate this into the existing code base of the applications. The two applications share a core SDK, so it needs only be implemented once to work for both apps.

Other parts of DHIS 2 already use Google Maps, and you may use it in your implementation.

Login android:

Android 4

Android 5

All:

  • Username: android
  • Password: Android123

More information

http://www.uio.no/studier/emner/matnat/ifi/INF5750/h15/group-projects/coordinate-picker/index.html

Group members

  • Andreas Oven Aalsaunet
  • Erik Vesteraas
  • Yaron Okun
  • Øyvind Johansen Amundrud

Architecture / technology

Tools

  • Android Studio
  • GitHub

Language

  • Java
  • XML

Link to Git Repo

https://github.com/evestera/dhis2-android-sdk

https://github.com/evestera/dhis2-android-trackercapture

https://github.com/evestera/dhis2-android-eventcapture

Link to sample android app

Summery of Requirements

Functional requirements

Screenshots and screen flows

Documented learning during project

General android development

Knowledge about the DHIS2 system

Collaborating as a diverse team

Suggested improvements to API

The GPS coordinates should be stored in a different format in the database. The format should also be consistent for all applications that use such coordinates. As per now, the coordinates in the Tracker Capture app are stored as strings, and the coordinates in the Event Capture app are stored as doubles, or floats. A more apropriate postgresql format would be for example GeoData.

Time schedule

Milestone 1: November 8th 

Task Status Comment
Document features and architecture on Wiki
Show understanding of DHIS2 web apps
Look into Google Maps API
Set up development environment

Milestone 2: November 22th 

Task Status Comment
First bare-bone version - static HTML
Uploadable as DHIS2 web app

Milestone 3: December 4th 

Task Status Comment
Finished, if applicable also with mobile app.

Final delivery: December 11th

Presentation: mid December

Log

03.11.2015

  • Set up the Wiki
  • Fork of the dhis2-android-sdk
  • Installed Android Studio
  • Tried to get Android Studio to work
  • Tried to understand SDK

05.11.2015

  • Got Android Studio to work
  • Explored existing code base
  • Updated the Wiki
  • Consulted with a DHIS2 Android developer
  • Made the first UI design sketches