Primary mentor | Fawwaz Yusran |
Backup mentor | |
Assigned to |
Abstract
The current OpenMRS Android client needs serious performance and other improvements. The goal of the Android client is to provide an alternative to access a hospital's OpenMRS instance by just using the provider's Android devices. See the full Android client guide for more info.
Considering the services offered by a hospital, an Android application can help doctors, patients and other staff a lot with its mobility and ease of use, without them having to start the OpenMRS web app on a desktop computer. This will improve the productivity and efficiency of the hospital workflow.
Skills Needed
Android, Java, Gradle, SQLite
Completed Objectives
- Provider Module: Provider Module is a large feature request by the community. More information here: In ProgressError rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
See PR #603 , and #PR 611
https://talk.openmrs.org/t/suggestion-for-openmrs-android-client/4134
https://talk.openmrs.org/t/android-client-gsoc-2016-project-ideas/4903/10
https://talk.openmrs.org/t/android-client-gsoc-2016-project-ideas/4903/12 - Visual improvements: Completed
- Settings screen can be improved . See PR #604 .
- Make application layout more compatible with different screen sizes. See PR #607.
Performance improvements: Completed
- app is lagging in some scenarios ex: when navigating through tabs. investigate the ways of decreasing the response time. See PR #564 .
Backend improvements: Completed
- Replace the old ActiveAndroid framework with Android Room. See
- Migrate to AndroidX. See PR #481
- Add Kotlin Dependency. See PR #581.
Remaining Objectives
Security improvement:
Forgot password option.
- Adding Night/Dark mode
- Application Tour
- Analytics (Extra Credit)
Extra Credit
Analytics - https://talk.openmrs.org/t/google-analytics-for-android-client/6070/3
We need to create a way for the Android app to collect important usage data and report it back to the local server, so that the sysadmin can look at the Analytics. The extra credit will be for making the Analytics viewing system on both the app and the admin panel. Note: We will not use Google Analytics but will develop our own system so that we can have the data in the local openmrs server.
Resources
- https://github.com/openmrs/openmrs-contrib-android-client - project repository
- https://openmrs.github.io/openmrs-android-client-user-guide - OpenMRS Android client guide
- Previous GSoC accomplishments