Android Build & Tests
iOS Build & Tests__
A Kotlin multiplatform (Android/iOS) name game. Player is shown a picture of a cat or dog and must guess the name. User can select from Cats, Dogs. The app utilizes the following:
Building and testing the Android App can be completed with:
or install with:
or opened and ran in Android Studio
The iOS workspace in
/iOS/NameGame can be open and ran from xCode or AppCode. A run script has been added to the build phase that will compile the common code into a framework which can be used for the project.
More to come
Views in this arch are truely 'dumb' - they should contain nearly no logic. They are responsible for rendering the view based on the
ViewState given to them by the presenter. They are implemented for each platform and utilize native UI SDKs and libs for each platform. Android uses Fragments and iOS uses UIViewControllers.
more to come
In redux world there are many ways to handle creation of async actions.
Thunks have been used in this app.
TimerThunks both use coroutines to launch concurrent operations that dispatch actions.
In this app, Navigation is considered a side effect of the AppState. The
NavigationMiddleware handles changing screens based on dispatched actions. The
NavigationMiddleware takes an implementation of
Navigator which is implemeneted for each platform.