Skip to content
This repository has been archived by the owner on Jul 12, 2024. It is now read-only.

Releases: nicoqueijo/Android-Currency-Converter-legacy

v1.2

12 May 18:19
Compare
Choose a tag to compare

Changes from version 1.1:

  • Introduced Dagger to manage dependencies.
  • Added in-app purchase option allowing users remove ads using Google Play Billing library.
  • In WatchlistFragment: switched from using a RecyclerView to using a DragLinearLayout.
    • Using a RecyclerView to manipulate objects whose contents change dynamically upon user input was very problematic, caused many issues/bugs, and made the code very messy.
    • RecyclerView is overkill for lists that will realistically be very small.
  • Upgraded theme to MaterialComponents.
  • Change scrolling library from MaterialScrollBar to RecyclerBubble.
  • Added Spanish translation.
  • Fix issues relating to input validation and formatting.
  • Added intuitive transition animations for better UX.
  • Removed the Fragment to see the source code as it's irrelevant/confusing to most users.
  • Added a short app tutorial with TapTargetView so new users can discover hidden features.

v1.1

13 Apr 18:56
be6bd31
Compare
Choose a tag to compare

Changes from version 1.0:

  • Refactored entire project from Java to Kotlin.
  • Use of MVVM instead of god classes in Activities and Fragments.
  • Migrated from Volley to Retrofit as it has a larger community and is more popular.
  • Change the database schema
    • Before: The selected currencies were kept in a separate table.
    • Now: All currencies are kept in the same table. The selected currencies are the filtered currencies with the property of isSelected being ‘true’.
  • Migrated from Gson to Moshi as it is more recommended by the Kotin Android community and integrates better with other Square libraries such as Retrofit.
  • Introduced Coroutines for expensive tasks and database access calls.
  • Changed the theme to an AMOLED black style to maximize battery saving.
  • Using Jetpack’s Navigation component instead of maintaining a Fragment manager.
  • Use of ConstraintLayout for views with complex nestation for more efficient view rendering.
  • Use of DiffUtil for more efficient adapter changes instead of manual calls to the notify methods from the Adapter class.
  • Remove interstitial ads to enhance user experience.
  • Switched from presenting the conversions in an EditText using the system keyboard for input to using a TextView with a custom keyboard.
    • Some things were very difficult, ugly, buggy, or downright impossible to do with the EditText + system keyboard. These include:
      • Setting hint values dynamically in accordance to the focused EditText view.
      • Formatting the contents of the EditText fields with a grouping separator.
      • Validating the input.

v1.0

11 Feb 20:38
Compare
Choose a tag to compare

This is the first release of the app using Java. Future plans are to publish another release using Kotlin alongside Android architecture components.