Use Android Studio New Project Dialog. Pick any Activity that you think will be useful . Blank , NavDrawer etc.
We will be making a shopping app complete with Login , Checkouts , Products Display , so on. Let's see how far can we go here.
RxJava2 . The standard for reactive and Asynchronous applications.
Dagger2 The Dependency Injection Library . Makes code decoupled and highly testable.
Retrofit Turns API into Java Interfaces.
MVP Model View Presenter , the Architecture that we will be using to organize everything . Seperating Business Logics from other Elements such as UI is very Important.
More as we go forward . Such as Firebase , SQLites , Push Notifications etc.
Lets add the dependencies in gradle that we haven't yet added. These are all the latest and Stable Dependency-Library that we have.
apply plugin: 'com.android.application'
apply plugin: 'com.neenbedankt.android-apt'
dependencies
{
compile 'com.squareup.retrofit2:retrofit:2.1.0'
//OkHttp
compile 'com.squareup.okhttp3:okhttp:3.5.0'
compile 'com.squareup.okio:okio:1.11.0'
//Gson
compile 'com.google.code.gson:gson:2.8.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
// apt command comes from the android-apt plugin
Dagger2 Generates code that is not recognised by AS(Android Studio)
apt 'com.google.dagger:dagger-compiler:2.7'
compile 'com.google.dagger:dagger:2.7'
provided 'javax.annotation:jsr250-api:1.0'
//RxJava2
compile 'io.reactivex.rxjava2:rxjava:2.0.2'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
}
In the Project level Dependency Gradle add.
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
In the next part we will be using introducing ourselves to MVC. Design the packages into proper parts and functions.