Skip to content

nzeakokosi7/payoneer_test_app

Repository files navigation

PayoneerTestApp

A Native Android (JAVA) App DEMO challenge for Payoneer.

A brief preview

Getting Started

This app was designed using the MVVM architecture. I also adapted the UI convention of
one Activity (MainActivity), multiple fragments using the Android Navigation Component.

I used retrofit for networking, Gson for object mapping while using OkhttpClient for cache
control. I wrote a custom Retrofit Callback class to enable me handle errors such as
SocketTimeoutException, UnknownHostException, ConnectException, JSONException,
IOException and other standard network errors properly.

For better user experience, a third party loader libary
('com.elyeproj.libraries:loaderviewlibrary:2.0.0') was used to serve as a placeholder while making network calls.

Details of the project structure explained below

  • /app
    #This is where all the application's directories are contained.

    • /adapters
      #This directory contains the adapter for binding data to the recycler view.

    • /dao
      # this directory contains the ApiInterface for retrofit.

    • /models
      # This directory contains all the POJO classes.

    • /repositories
      # This directory contains the repositories which abstracts data from the ApiInterface
      and feeds to respective view models.

    • /ui
      # This directory contains all UI modules like each module contained within is a subdirectory
      containing a fragment and its view model.

    • /utils
      This directory contains helper classes like the Retrofit service class and the Retrofit
      callback class.

  • MainActivity.java
    # Main activity class file.

  • PayoneerTestApp.java
    # Main application file which extends the Application class.

  • SplashActivity.java
    # Splash Screen activity for earlier android Os versions.
    NB: Recent android versions use the app theme and the roundIcon as a default splash screen.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages