Visual configurations¶
Local Analytics¶
Data Visualizations¶
The DHIS2 Android App can now render analytics that have been created in the Data Visualizer app in DHIS2. Analytics to be displayed require to be configured using the Android Settings WebApp where administrators will be able to decide the charts and tables to be displayed for end users.
To configure analytics open the Android Settings WebApp on your DHIS2 server and follow the steps below:
- Select Home, Program or Data set from the Analytics menu
- Select the visualization type "Data visualization"
- Click on the "Add Visualization" button
- Search by typing the name of the visualization and select it by clicking on it
- Add an alternative title, otherwise, the app will display the name of the visualization

Analytics are created and configured using the web tools, however, the data aggregation happens offline using only data stored in the device.

Analytics Types and Filters¶
The analytics supported in the Android App are:
- Pivot Tables
- Column Chart
- Line Chart
- Pie Chart
- Radar chart
- Single Value
For each visualization object, the user will be able to filter in the app by:
- Relative Period: Daily, Weekly, Monthly, Yearly, This Quarter, Last Quarter, Last 4 Quarters and Quarter this year.
- OrgUnit: Select "All" to display all the org units available to the user or "Selection" to specify one or multiple org units.

A reset button will be displayed if a filter is applied. Select Reset to display the default visualization.

Users can also change The anlytics type between chart, table or single value.

Legends¶
Legends are displayed in pivot tables by enabling the feature "Use legends for chart color" in the Data Visualizer App.
The Android app will color the cells using either the pre-defined legend per data item or a single legend for the entire pivot table, depending on the settings in Web.
The style for legends in tables has a new design which ensures good contrast and visibility independently from the selected colour for the legend.

Groups¶
All these visualizations can be organised and displayed in groups. Groups are also configured using the Android Settings Webapp following the steps below:
- Open the Android Settings App
- Click to Add a new visualization in the Analytics Menu (Home, Program or Data set)
- Select a visualization
- Mark the "Use a group visualization" checkbox
- Create or select a created group
- Save the visualization
You can name your different groups, they will be displayed as a button in the top bar of the analytics screen.

Limitations¶
Android uses tables and charts created using the web Visualizer app, however only the configuration parameters of the object are used by the Android App: data elements, indicators, chart type, title, periods...; all the aggregations are calculated offline by the android application. The results will be based on the data stored in the device at that exact moment.
Since the aggregations and calculations displayed are calculated in the device, the implementation of analytics is limited compared to web. In summary the compatible and suported objects and features are:
- Well formed analytic objects (series, categories, filters)
- Use of relative periods (Fix periods are not supported)
- User has view access
- Limitations for Pivot Tables
- Number of header lines: 1 or 2 (from 2.3)
- Number of header columns: 2
- Limitations for Charts
- Number of Series: No limit (but remember you are rendering in a small screen)
- Number of Categories (doesn’t apply for pie chart): No limit
There are many more restrictions which apply to Android Analytics regarding the many configuration options available in the Web Visualizer as well as the supported functions and calculations related to indicators and program indicators. This table summarises all supported features.
Note
The following aggreagation functions are supported now in local analytics: LAST, FIRST, AVERAGE_SUM_ORG_UNIT, LAST_AVERAGE_ORG_UNIT, LAST_IN_PERIOD, LAST_IN_PERIOD_AVERAGE_ORG_UNIT, FIRST_AVERAGE_ORG_UNIT
Event Visualizations¶
The DHIS2 Android App can now render analytics that have been created in the line listing app.Analytics to be displayed require to be configured using the Android Settings WebApp where administrators will be able to decide the tables to be displayed for end users.
To configure analytics open the Android Settings WebApp on your DHIS2 server and follow the steps below:
- Select Home or Program from the Analytics menu
- Select the visualization type "Event visualization"
- Click on the "Add Visualization" button
- Search by typing the name of the visualization and select it by clicking on it
- Add an alternative title, otherwise, the app will display the name of the visualization
In the app, the users will be able to search by period, Org. unit, or any of the columns added in the Line List.

From 3.1.0, the Android App introduces support for the Category Option Dimension in line listings. Additionally, it has been improved the text alignment within the Line Listing tables to support left alignment. This enhancement ensures better readability and a cleaner presentation of data, making it easier for users to review and analyze their information quickly.
Limitations¶
To add an event visualization in the Android Settings WebApp, the table must:
- be created in the Line Listing app
- use relative periods
- not exceed 15 columns
Interface language¶
The language of the interface will corespond to the language set in the DHIS2 user configuration. If the language is not available in the app, it will pick the language of the device.
If none of the language configurations are available, the app will default to English.
Translations set up in DHIS2 for metadata will also be shown according to the language in the user configuration.

Personalize your Icon¶
You can set your icon in the wallpaper using the DHIS 2 App Widget. The icon will be the flag configured in your server.

Note
How to add a widget:
- Long press in your wallpaper
- Select Widgets
- Look for the DHIS 2 Widget
- Select
It will add a shortcut to your app.
Personalise the colour of the App¶
You can set the generic theme of the app by configuring the them in our server:

Note
How to set the server theme and flag:
Go to System Settings > Appearance > Style
- Select your style
- Green,
- India (Orange),
- Light Blue,
- Myanmar (red),
- Vietnam
- Select your flag
Icon library for metadata¶
There are currently 134 icons available that you can choose from. You can search by name in the icon picker widget. Icons are available in positive, negative and outlined shapes.
Icons can be associated to programs, stages, data elements and the options of an option set. This is configurable through the Maintenance App.
Note
This feature is available from DHIS 2 2.30 onwards

In the DHIS2 Android App icons render in the home screen to illustrate all the programs available to a user, or while adding an stage. For data elements and options, the icons render for single event programs, when a section contains a single or more DEs, showing the option set as a matrix or sequence of images.
The icon based data entry can now be used in enrollment forms. When an enrollment section contains one or more Tracked Entity Attributes with option sets and icons assigned, the app is able to display them as a matrix or sequence based on the section rendering type. In previous sections of the App this feature was only available for Data elements.

From 3.0 it is possible to display custom icons in the Android App. DHIS2 (41 version) now allows uploading custom Icons to be used in addition to the built-in Icon library. This is useful for use cases not related to health or that require very specific iconography. The Android App will render the custom icons that need to be uploaded and configured using the Maintenance DHIS2 Web App.
To upload and assign the custome icons through the instance, the admin must:
- Open the object (program, data element, option, etc.)
- Click on the "Select icon"
- Click on the "Choose file to upload"
- Add a key and description
- Save

From 3.1 it is possible to disply the custom icon when a relationship is displayed.
Note
Icons will initially only render in the new Android app. The new web-based Capture App will incorporate them in the near future.
We plan to expand the collection of icons on each future version of DHIS2 for that we need your help: we are seeking ideas for new icons - please submit yours using this form.
Colour palette for metadata¶
Tracker and Event capture now have the ability to render colours for programs, stages, data elements and options in option sets. A colour picker is integrated in the Maintenance App, which shows as a palette, except for options which allows the selection of any colour.

In the Android App, the color will be rendered as background color for programs and stages combined with an icon (if selected). For options it renders as the background colour during data entry form for single event programs. When the user selects a program with an assigned colour, that colour becomes the background theme for all screens in the domain of the program.

Note
Colours will first be available in the new Android app, followed in future releases by the new web-based Capture App.
Rendering Types for Program Sections¶

Program Section: when used in combination with icons, a Program Section with one or more data elements and associated Option Sets can render the options in sequential or matrix layout (see screenshots). If the icon is not found, the app displays the DHIS logo.

From 2.8, the app will render option set with any value type as matrix or sequential layout.

Note
Render type for sections will first be available in the Android app, followed in future releases by the new web-based Capture App UI.
Calendar¶
Now it is possible to use two different calendars. The one on the left is the first to appear but you can change it by clicking on the calendar icon on the lower left corner.
This is available when:
- Making a new enrollment.
- Creating a new event (Programs with and without registration).
- Using period filters in data sets and programs with and without registration.

Note
For Android versions 4.4, 5.1 and small devices, the Accept option is not visible in the second calendar view.
Render types¶
The available rendering options have been expanded to include horizontal and vertical radio buttons, checkboxes and toggles for any value type.

Note
The default rendering option will automatically display a search box whenever there are more than 15 elements in the option set to ease the selection.
![]()
Render types are available in event and registration forms
QR and Barcodes¶
Data elements or attributes type text can be also configured as QR or barcodes. When a Data Element or Attribute is rendered as QR/Barcode, the app will open the device camera to read the code image. When the QR/Barcode is a TEI attribute configured as searchable, the user will be allowed to scan the code in order to search and identify the Tracked Entity Instance. This will also work for option sets.
Barcodes also allow the user to manually enter the value.

Export/Share¶
Users are now able to display a bar or QR code in an image so that it can be shared for printing, take a screenshot or show it on the screen for scanning.
Non-editable fields can still share the bar or QR code, but will prevent the user from capturing a new one.

GS1 Data Matrix codes¶
If an attribute or data element rendering type is configured as QR code, the Android App will be able to read and process the string as GS1 Data Matrix codes.
Combined with the use of d2 functions in program rules, the different fields of a GS1 code can be saved into different data elements or attributes (d2:extractDataMatrixValue(key, dataMatrixText)).

Signature¶
This feature allows users to collect handwritten signatures from the device. The signatures will be saved as an image data element in the app.
This configuration must be done in web ( available from 2.40 version) by selecting the "canvas" rendering type on an image value type.

From 3.0, signatures are allowed to be opened in full screen for better visibility.
User Experience¶
Tappable areas in icons and buttons¶
Some buttons or tappable labels of the Android App had small sensitive areas for the user to tap. The whole user interface was reviewed and the tappable areas has been increased. For example the "+" button to create a new stage or the "˅" icon to open TEI details or expand a section.

Loading Banners¶
The Android App provides visual animations to users when they perform actions that take longer than usual to complete, such loading maps or searching, so that they know that the system is processing their request.

Offline Buttons¶
This feature enhances the functionality of the app when it is used offline, ensuring that menus are disabled when the online actions are not available.
Long Texts Management¶
The Android App enables users to view long text in fields that are limited in size, such as a stage names or datasets headers.
Legends¶
The Android App displays the full description of the legend when tapping on the information icon once a legend is active. These feature is available only in event and registration forms.
From 3.1.0, the legend in a data element will now automatically update after seconds of inactivity. This means that users no longer need to move to the next field to prompt the legend update, making the process smoother and more efficient.

Input fields¶
The new input fields are now displayed by default in the Android app and admin users are able to opt-out to use the old forms through the Android Settings web app.

Menus and Navigation bar¶
A revamped of the menus and navigation bar has been made to be more user-friendly and accessible. It includes a cleaner, more modern look that improves readability and usability. These updates are designed to provide a more efficient and enjoyable user experience.


