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.
Day by day the mobile technologies are rapidly evolving and the new technologies and improvements are adding to the existing platforms, to enable the developers create better products. Android is also going forward with these new improvements and we can use them to bring the OpenMRS Android client app to the next level.
Considering the services offered by a hospital, an Android client app can help the users a lot with its mobility and ease of use to reduce the extra work that needs to be done via a desktop computer by bringing it to the users finger tips. This will improve the productivity and also the efficiency of the hospital workflow.
Skills Needed
Android, Java, Gradle, SQLite
Objectives
- Provider Module: Provider Module is a large feature request by the community. More information here:
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:
- Settings screen can be improved
- Make application layout more compatible with different screen sizes
Security improvement:
Forgot password option.
Performance improvements:
- app is lagging in some scenarios ex: when navigating through tabs. investigate the ways of decreasing the response time.
- add a global error handler to catch uncaught exceptions to prevent the app crash
Backend improvements:
- Replace the old ActiveAndroid framework with Android Room. See Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
- Support Android API Level 28.
- Replace the old ActiveAndroid framework with Android Room. See
- Application Tour: Tour of the application so that a new user is familiar with its features and can use the app to the fullest.
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