I’m Learning Kotlin By Creating Apps — This is my journey so far.

🧠Objective: Learn Kotlin by creating apps
📚Technologies: Kotlin, MaterialUI (& Github)
💻Editor: Android Studio
⌛️Duration: About 4 weeks

► In this post you’ll find 4 apps.

► To create these apps I followed the tutorial “Android App Development Masterclass using Kotlin” from Udemy, instructed by Tim Buchalka and Jean-Paul Roberts.

► In every application, I tried to learn and create something different. These apps are far from perfect, but it’s a sample of my work and learning progress.

► In the future, better apps are going to be added.

1. Calculator App

About the calculator: It is a very basic calculator where you enter numbers using the apps buttons. It performs the calculation when any of the operation keys are pressed (plus, minus, multiple and divide). It works both in landscape and in portrait view.

I worked with:

  • Group widgets, to see how I can do things like constraining them to be positioned as a group, as well as common properties for multiple widgets at the same time.
  • OnClickListener: so that the same method can be used by multiple buttons

code | demo

2. Top 10 Downloader

About the To 10 Calculator app: You can find the top 10 most famous apps currently on app store! Or you can see the same list with 25 results and even change it to show songs, paid, or free apps.

I worked with:

  • Downloading data over the internet, running task in the background using AsyncTask (which although in java works well in kotlin it is not recommended)
  • Parsing XML to extract data from a download feed
  • The list ListView widget for displaying a scrollable list of items (which is not a very modern method, but for simple projects, it works fine)
  • Adapters for providing data to ListViews
  • Creating a menu/sub-menu for the app

code | demo

3. Simple YouTube Player

About the simple youtube player: With this app you can see a particular video or a playlist from youtube. There are also small hints while the actions that are being performed, such as “video paused” or “video stopped”.

I worked with:

  • Youtube android player API and Google API key
  • Adding widgets dynamically
  • Intents

code | demo

4. Flickr Browser

About the Flickr browser: It allows us to query and download a list of recent photos from the hugely popular Flickr website.

I worked with:

  • Material Design: Google introduced material design in android5, Lillipop (API 21) to encourage good design and allow a consistent user experience across different platforms and device sizes
  • Making an app compatible with previous versions
  • Downloading JSON data from the web (using AsuncTask)
  • Callback functions and interfaces
  • RecyclerView and RecyclerViewAdapter (which like a younger brother of the ListView)
  • Listening for taps on a RecyclerView, and the purpose of a GestureDetector
  • Themes and styles, and a look at how they work for different versions of Android
  • Searching with multiple tags

code | demo

Thank you for reading, feel free to comment :)

Would you like to get me a coffee?!☕️

You can do that here → paypal.me/eleftheriabatsou

But If you can’t, that’s ok too 😍.

It would be nice to subscribe to my youtube channel. It’s free and it helps to create more content. Thank you.

Youtube | Codepen | GitHub | Twitter | Site | Instagram

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store