IsMyServerOnline

15 Apr 2020

Monitor your servers status within an Android application.

         
IsMyServerOnline - Home IsMyServerOnline - Notifications IsMyServerOnline - Server details IsMyServerOnline - Settings IsMyServerOnline - Server configuration
Download on Google Play Download on Amazon AppStore

Features

Development

Develop in kotlin with intensive usage of coroutine. Follow the MVVM architecture with android architecture component (LiveData - ViewModel - Room) and use dependency injection with Koin.

The biggest challenge was to handle Android background tasks to refresh servers status. It use Android worker but it wasn’t enougth so it also use the basic android alarm manager. I thinking about writting an article on how to achieve this correclty.

I also had some difficulties to get the mobile signal quality. I write an article about that here.

Devops

Fully integrate on Azure Devops.

 
IsMyServerOnline - Devops dashboard
Azure devops IsMyServerOnline dashboard

Boards

Use Kanban (Todo, doing, done) to follow bugs and new features.

 
IsMyServerOnline - Devops kaban board
Azure devops IsMyServerOnline Kaban board

Repository

One git repository on Azure Devops. Usage of git flow.

Pipelines

Build

One build pipeline write in yaml (to keep history on the git repository) that trigger on the develop and release/* branches. This pipeline:

 
IsMyServerOnline - Devops build
Azure devops IsMyServerOnline build result

Release

Two release pipeline. One for the Google PlayStore, one for the Amazon AppStore.

The Amazon AppStore release use the Amazon Devops Extensions I made. It prepare the release and then publish it. It has only one manual task between the too steps, update the application description and changelog.

The Google PlayStore release is fully automatized from the testing release to the production release. It use the metadata files hierarchy to update the PlayStore description.

 
IsMyServerOnline - Devops release playstore
Azure devops IsMyServerOnline release PlayStore

Privacy policy

Terms & conditions