onaio / kaznet-web

a tasking application built on top of Onadata
Apache License 2.0
4 stars 1 forks source link

Kaznet Mobile Application #35

Closed moshthepitt closed 6 years ago

moshthepitt commented 6 years ago

Kaznet Mobile Application

This document describes the ILRI Kaznet mobile app.

What does the Kaznet mobile app do

Kaznet is essentially a set of tools for crowd-sourced data collection. The Kaznet mobile app allows data contributors to log in to their Kaznet accounts and perform data collection tasks.

Who uses the Kaznet mobile app

The target users are people who collect data for the Kaznet project.

Features of the Kaznet mobile app

Account management

Through the mobile app, users are able to:

View tasks

Users are able to see a list of tasks that are active in the Kaznet system. There are two types of tasks that the user can view:

In both cases, the user is presented with a list of tasks and can click on each individual task to see more details. In the tasks list, the tasks that the user cannot participate in are displayed slightly differently to distinguish them.

Task details include:

Launch forms

When users are viewing a task that they can participate in, they can click a button which will launch that task's XLS form in the ODK collect app. The user will then be able to fill in the form within the ODK app and thereafter go back to the Kaznet mobile application.

View submission data

User will be able to view some information on the task submissions that they have made. This includes:

View payment data

Users will be able to see some information on payments that they have earned from taking part in Kaznet tasks. The information will be filterable by task and by date.

Notifications

Any notifications sent by the Ona Messaging Platform will be received by the Kaznet mobile application and brought to the attention of the user in the same way that other Android applications do so.

Implementation Plan

Technical goals

The goal is to have a light-weight and performant android mobile application. Technically, the requirements are:

Technical considerations

Some native android code has already been written that does:

Choice of technology

Option 1: Native Android

There is a large group of engineers at Ona who have substantial android development experience. Presumably, one of them could implement the Kaznet mobile app quickly and cleanly.

Pros
Cons

Option 2: Flutter

Flutter is sold as way to quickly build beautiful mobile application UIs. The Kaznet mobile application is basically almost all UI, with two "non-UI" parts - notifications and launching ODK.

Pros
Cons
jasonrogena commented 6 years ago

Under "Technical Considerations" would be nice to add that it will need to work offline and usable in areas with slow/intermittent connectivity.

moshthepitt commented 6 years ago

@jasonrogena done, thanks

moshthepitt commented 6 years ago

Replaced by https://github.com/onaio/kaznet-mobile-app