A simple To-Do utility Android app in which one can set priority for each To-Do. Each priority set for each To-Do is displayed via an appropriate color. This app is built on a MVVM architecture.
- Android Architecture components such as LiveData, ViewModel and Room Database.
- Android Views such as RatingBar and Floating Action Button (FAB).
- Android App components such as Fragments and Activities.
- Android Studio for Development.
- Java
I have learned the fundamentals of a MVVM architecture and the various advantages of using it, such as a more organised and easily testable code. I also learned the downsides of a MVVM architecture: 1) It might not be suited for a simple UI and 2) Architecture component such as Data/View Binding, which are predominantly used along a MVVM architecture are hard to debug as some of the logic are expressed declaratively (XML) rather than imperatively. I also got to know more on the activity and fragment lifecycle, and how they differ. Android Native Views such as RatingBar and FAB were used. I had intially planned to use a slider for letting user to set the priority of each To-Do, but felt it was unintuitive and hence went with a RatingBar.
- While implementing the MVVM architecture, I used this Google Codelab as a learning resource.
Note: It will be easier to do the following via a phone (web browser in desktop mode).
- Login on to github if you arent logged on.
- Click on the green tick on commit and file panel.
- A dialog box with the hyperlink details should appear. Click on the hyperlink.
- Click on artifacts, and you will be able to download the APK.
- Install the APK. Allow App Installations from Unknown Sources, if requested.