Android SDK

DHIS2 Android SDK

The SDK is a core DHIS2 common good for Android developers to facilitate the development of Android apps using DHIS2 as a platform. It allows to use it in others custom ad-hoc apps, benefiting  developers from the many functionalities included in the SDK.

SDK platform

The SDK is always compatible with the latest versions of DHIS2, so the android developers can build their own apps fully compatible with those dhis2 versions.

You can find the documentation describing how to use the DHIS2 Android SDK in the following link
Offline data collection
It contains a local database representing the DHIS2 data model for mobile Apps. This means that it contains the definitions of all DHIS2 resources as: Programs, dataSets, Data Elements, Tracked Entities, Organisation Units
Sync services with the server
Connecting directly to a DHIS2 instance to synchronize the metadata/data from the server, storing them in the local database, and sending new or updated data from the database to the server.
Data Access Layer
Providing a common layer to easily access the database and/or the objects returned by the API.
  • Database: It helps to retrieve all information (metadata and data) from the local storage using Java objects instead of SQL sentences
  • API: It helps to retrieve information (teis, events, and datavalues) from the API using Java objects instead of calling APIs
Error / conflict management
Managing the connection between the Android App and the DHIS2 instance, giving feedback on any errors or conflicts
Storage unique values
The SDK reserves values for attributes that are unique and automatically generated. The number of unique values to store is configurable in the SDK.

You can download the SDK from: