The DHIS2 Android Software Development Kit (SDK) is provided as a common good for Android developers to facilitate the development of custom Android apps using DHIS2 as a platform
Jump to a section on this page
Overview of the DHIS2 Android Software Developer Kit (SDK)
The DHIS2 Android Software Developer Kit (SDK) helps independent app developers to build custom ad-hoc apps to connect to DHIS2 systems by providing them with a set of standardized tools and functionalities.
The SDK is always compatible with the latest versions of DHIS2, so the android developers can build their own apps that are fully compatible with those DHIS2 versions.
See the items below for more detailed descriptions of some of the key DHIS2 app functionalities included in the SDK.
Offline Data Collection
The SDK contains a local database representing the DHIS2 data model for mobile Apps. This means that it contains the definitions of all DHIS2 resources, such as: Programs, dataSets, Data Elements, Tracked Entities, and Organisation Units.
Connect 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
Provides 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 (Tracked Entity Instances (TEIs), events, and datavalues) from the API using Java objects instead of calling APIs
Error / Conflict Management
Manages 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.