Test task for Payio
Added CI CD and Email notifications with new build APK
- Refactor the application to the best understanding of the design pattern.
All layers of Clean Architecture have been implemented.
- Fix the loading state and fetching data feature.
Implemented all loading states.
- Find and fix all other bugs and issues.
The application works well*.
- Add more information about characters.
Added a few more fields (image, gender).
- Optimize scrolling performance.
Scrolling works well now, with transition state delay to prevent server spam.
- Implement pagination.
Done.
- Add infinite scrolling pagination.
Done.
- Implement recovering from an
Error
state after the last request failed in the paginated view.
Done.
- Account for all possible states and edge cases.
Done.
One problem is that I can't manage. I don't have a physical device for testing iPhone behavior. In the simulator, I always got a network error.
That's because I used a plugin for checking internet activity. The plugin always returns false for the isConnected
function on iOS.
I tried to change two plugins, and I encountered the same error. Also, I suspect it might be a trap set by the task creator, similar to what happened with the Android Manifest. However, I also attempted to create a project from scratch, but the result remained the same. I'm quite sure that if you test it on a real device, you won't be able to reproduce that bug. Nevertheless, I decided to let you know.
iOS
Android