In the last post, we learned about the MVP (Model View Presenter) architecture pattern and the package by feature code structure. In this post, we will create the project and do some initial setup on it.

We will be using the new shiny Android Studio 3.0. If you are using the older version of Android Studio, you should still be able to follow the series, but the steps will be quite different for you. Well, I will provide links to resources that will help you if you are still on an older version of Android Studio.

The app will also be written in Kotlin. If you haven’t programmed in Kotlin before, you can get your feet wet with the official tutorial. I will also explain some Kotlin syntax and features here.

Without further ado, fire up Android Studio and click on New Project. We will name the project ShazamClone. Feel free to use any name, we will have to rename the app anyways when uploading to the Play Store as Google won’t allow us to use that name. If you are running Android 3.0, make sure you tick ‘Include Kotlin support’.

Next is to select our target Android devices. We will be supporting only phones and tablets. Because I want my uncle Bob to be able to run the app, I am targeting API 14 (Android 4.0 Ice Cream Sandwich). I would have selected API 9 as my target, so my grandmom can also run it, but Google Play Services no longer support API 9.

After selecting the target Android devices, we will create a new empty Activity. It will be our default (launcher) activity and will house the magically discover music button.

After clicking Finish, Android Studio will create and set up the project for you. If you are running Android Studio 3.0 and you followed the steps above, you don’t have to take any additional steps to get Kotlin working. But if you are running an older version of Android Studio, then follow this tutorial to configure Kotlin.

After Android Studio is done creating the project, you should get a screen like this: