Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Released on

March 28, 2023

New features

Bug fixing

  • Calculated scores now include all decimal points. Although the UI only shows 2 decimal points, up to 8 (TBC) decimal digits are sent during sync with DHIS2.

Known issues

APK

PSI’s google store

Planned Versions

Version 1.7

Released on

Expected: Late May 2023

New

Featuresnone

features

None

Bug fixing

None

Changes

  • Event sync feature background services refactor.

  • Push service

What is this change about

  • Up to version 1.6.15, there were three type of services used in HNQIS.
    SurveyService (technically using what's called an IntentService in Android): used to actions related to surveys (retrieve sent surveys, retrieve unsent surveys, create Survey …)

  • PlannedSurveyService (also using an IntentService). They are there to load planned surveys in the first tab

  • PushService (technically using what's called a JobIntentService in Android). This one was in charge of sending surveys to dhis2 when the app is in background

A problem has been present since Android Oreo (Android 8.0, 2017). https://developer.android.com/about/versions/oreo/background. Since that version, starting services from background was no longer possible using the services that HNQIS was using (IntentService & JobIntentService). They only worked on foreground. Background calls were producing silent crashes in the hundreds. Additionally, JobIntentService had already been labelled as deprecated in Android documentation:
https://developer.android.com/reference/androidx/core/app/JobIntentService

Solution: Android Support Library 26.0.0 (part of Android 8.0, 2017) introduced a new JobIntentService class, which provides the same functionality as IntentService but uses jobs instead of services when running on Android 8.0 or higher.

The refactor implemented in HNQIS 1.7.X turns push procedure into a Worker, that can run in background and is now fully supported.

Notes for testing:
The screens listed below are now using the re-written service, hence testing should focus on those

screen

screens:

  • Planned surveys screen

  • Planned survey by org unit

  • In progress surveys

  • Sent surveys

  • Feedback

  • Survey creation

  • Monitoring

  • New survey

Known

Issues

issues

  • The deprecated services were producing several background app crashes. This change should eliminate most of those crashes once the application is deployed. Hence, the number of crashes recorded in HNQIS’ Firebase logs should be significantly reduced after the deployment of the app.

APK

Previous Versions

Version 1.6.14

...