For analyzing a photo we took for getting the information of it
OneShoot
This is an application for analyzing a picture you took or are selected from the photo. If you give app a scenic photo then app might give you the information of the place name, the similar place photo, ... etc. In the near future, we'll add more function for anaylzing the picture.
Architecture
We're using Clean Architecture to build this App. There're few layers as well-known
Presentation, Domain, Data layer. Also, I add an extra universal module ext for making
extension library in Kotlin.
Presentation
As long as you know Clean Architecture, this layer is responsible in showing the data from the
Data layer and handle thread to UI thread for changing the UI state and here is including
Android SDK.
We're using the coroutine not RxJava here because the coroutines are lighter than thread,
Domain
Here's totally pure Kotlin library without Android SDK.
Data
We're still using Retrofit2 + RxJava here. This layer is including the Android SDK in order to
using the database and Firebase service.
Whole Architecture
Used libraries
- Coroutine
- Anko
- RxKotlin
- Retrofit 2
- Gson
- Live Data
- Firebase
- DBFlow
- Kodein
- Glide
We'll focus on using Android Architecture Component, near future they will be added one by one.