Tips on Learning Android Development


This past month at Access Code, we learned how to build an app! Our initial exposure to Android Studio was a bit daunting and overwhelming for most of us. However, at the end of this unit we were able to conquer our fears and doubts and build a functioning calculator (basic and scientific). Of course, some of calculator apps had bugs and we’re still learning but it felt great to see the end result and content with our hard work and dedication into learning the material.

One of biggest challenges I faced while learning how to use the Android Studio was incorporating JAVA’s fundamentals such as Classes, Inheritance and Polymorphism. Learning these fundamentals is key because when you create a new project such as the Hello World app in Android Studio, an “Activity” is created. This “Activity” in Android Studio represents a layer of the Android app you're creating, e.g. the a screen which the user will see when they launch your app. In an Android application there can be many activities in which you can switch between them to change to a different screen. For example like the Weather Channel app:

Two activities: today’s forecast and this week’s forecast

In order to implement these activities, you have to understand how to extend Activity class and the methods that Android uses to generate them. The Hello World App example below is showing that “MyActivity” is going to extend to ActionBarActivity. Essentially, your creating a subclass of Activity (in this case “ActionBarActivity”), called MyActivity.

source: http://developer.android.com/training/basics/firstapp/starting-activity.html

In your subclass “MyActivity” you are now implementing a callback methods that the system will call when it transitions from one activity to another. When this happens, your app is going through an Activity lifecycle such as what to do when it's first created, stopped, resumed or destroyed. If you feel a bit overwhelmed just by reading the above paragraph, it's okay because once you understand inheritance, classes, and polymorphism, it will be easier to comprehend.

My next challenge was trying to figure out where and what everything is in Android Studio. I recommend searching through Youtube or online tutorials such as Team Treehouse, Udemy, etc. to help you navigate and build your first simple app. Also, it is very important to learn how to read JAVA and Android documentation because it will help you debug and figure out how certain functions work.

Lastly, try to keep an optimistic attitude and work you way up from a simple one activity app to more complex app. Don’t be afraid to break things in Android Studio, it's a great way to learn how to debug and understand how/why that bug occured. You can always find forums or just google your error to help you troubleshoot. Feel free to skim the comments/notes on the side, they contain some helpful links to resources.