Exploring Android Studio

Welcome to this review of the Pluralsight course Exploring Android Studio
by Larry Schiefer


Larry Schiefer

Larry Schiefer is the CTO and co-founder of HiQES, a mobile, embedded, and application development service company. Larry has over 16 years of experience leading teams, and designing and developing high performance and robust software, and is a Google GDE.

I am new to Android and modern Java development and initially found Android Studio to be quite a large and complex IDE to learn.

I found plenty of forums with various bits and pieces of information, but I felt that I was only picking up patches of knowledge I didn’t have a good understanding of what the most essential concepts were or how the different pieces fitted into the overall picture.

So I was glad to see that Larry has produced this course to make getting started with this programming environment a lot easier.

Also in this series:

Part 1 – Introduction
Part 2 – Setting Up Android Studio
Part 3 – Migrating to Android Studio
Part 4 – SDK Tools
Part 5 – Creating Apps
Part 6 – Building and Debugging
Part 7 – Library Projects
Part 8 – Building a Release Package
Part 9 – Advanced Features
Part 10 – The Gradle Build System
Part 11 – The Android Gradle Plugin


Introduction and Overview

Larry starts by explaining the goal of this course: to make you an effective Android developer!

There is content here both for beginners and more experienced Android developers who want to transition from older Eclipse ADT-based tools.

A Brief History of Android Development Tools

Some of the things that Larry teaches us in this clip are:

– The First public release of Android Tools was back in October 2008
– SDK Tools was released in October 2009 with two managers: the SDK manager and the AVD manager
– Split of platform tools in December 2010
– x86 support in July 2011 with SDK Tools Revision 12 (previously only ARM platforms were supported)
– Eclipse and ADT bundled in November 2012
– Android Studio announced in May 2013
– Android Studio v0.2.x in July 2013
– Android Studio v0.4.2 in January 2014

If some of these terms are unfamiliar, Larry describes them for you here.

At the time of writing, the latest version of Android Studio is v2.1

Comparison of Eclipse and IntelliJ

Android Studio is based on the IntelliJ IDE.

Larry provides an overview of the difference between the two most popular Java based IDEs.

Nomenclature and Miscellaneous Differences

Eclipse and Android Studio use different terms to mean the same thing. For example a Workspace in Eclipse is the same as a Project in IntelliJ/Android Studio.

Larry describes several other terms and what they mean.

Setting Up Android Studio


In this module Larry sets up Android Studio on a Windows 7 64 bit machine

If you need to install Android Studio on a Mac, you can use this guide

Beginning Android Development Tutorial: Installing Android Studio

System Requirements

We learn that these are very similar to Eclipse/ADT requirements.

Larry explains that additional software needs to be installed on your machine, such as Windows updates and the Java JDK

Download, Install, and Update

This video clip is a bit out of date now because Android Studio is no longer an Early Access Preview, but the installation process is mostly the same today.

I did not see any Canary updates offered to me, and I think this is due to Android Studio now being a stable mainstream product.

Larry says that it is usually a good idea to update, but there are some issues to be aware of

Dangers With Updates

Again I don’t think this clip is entirely relevant any more because updates aren’t still getting pushed out as regularly as Larry describes here.

Larry also describes a problem with Gradle version numbers and Android Gradle plugin versions being different.

Migrating to Android Studio


This module covers the exporting of an existing Eclipse ADT project

Unlike Eclipse, Android Studio uses a Gradle-based build system.

Exporting Projects From Eclipse

Larry explains that there is an ADT plugin which includes the ability to export existing projects for Gradle-based builds. We warns that this is not the best long term option however.

We also learn the ADT provide export functionality is no longer needed, as we can now directly import Eclipse projects.

Larry demonstrates the ADT plugin approach in this clip.

Importing Projects Into Android Studio

This clip demonstrates directly importing Eclipse projects. An example ToastTester app is run inside an Android emulator.

Larry ends with a brief discussion of using these projects in Git.

Common Android Studio Settings

It’s nearly time to go full throttle, but first we learn some additional options to tweak.

Larry shows how to change the theme to Darcula.

I found that this change no longer requires Android Studio to be restarted.

Larry also discusses several of the changes that you can make to the Editor Settings, including the Smart Keys and Colors & Fonts sections which are found by using the General drop down.

Android SDK Tools

The Android SDK Manager

The SDK Manager provides us with a UI driven mechanism for maintaining our SDK components.
It also has a command line option, but this is not covered in this clip.

Larry demonstrates the User Interface: how to load it, understanding all of the form elements and what they tell you about your settings, and installing new packages.

I found that the welcome screen has changed a lot since this course was recorded, but you can find SDK manager via the Configure drop down, and then clicking Launch Standalone SDK Manager

Larry highlights several important packages and explains what they mean.

Here is the Android Developer Dashboard page,  which shows the current breakdown of usage of different Android versions.

We hear that the repository package is a local Maven repository used by Android Studio, and that we will learn more about that in the Maven module later in the course.

Larry also explains the importance of installing Intel HAXM and how to do that.

Next, we see the Manage Add-on Sites item which is found under the Tools menu

I could not find a TextSwitcher sample project in version 2.1 of Android Studio using the technique that Larry shows, but I did a search for TextSwitcher and found a Java file at


I discovered that the Android Studio v2.1 welcome screen shows the option “Import an Android code sample” and this is easier than finding and copying across files. The TextSwitcher is found in the Ui dropdown list.

Further instructions on sameples can also be found here: http://developer.android.com/samples/index.html

The Android Virtual Device Manager

The AVD Manager is another key component of our debug system.

Larry takes us through the Device Definitions tab, and briefly looks at how to create our own device definitions, but says we should not normally need to do this.

We then see how to create a new Android Virtual Device.

Your Android Virtual Devices are located under the users directory for the operating system, e.g. C:\USers\Schiefer\.android\avd

Larry also shows us several ways to reach the AVD Manager from the main Android Studio window

Android SDK Location

The Android SDK is available in 3 different forms:

  • Bundled with Android Studio
  • Bundled with Android Developer Tools (ADT)
  • Stand alone installation

Larry highlights that each of these is a separate installation, so you could end up with multiple installations of the SDK on your machine.

We then see a tour of the various files and directories that were installed to C:\Program Files (x86)\android\android-studio\sdk

Along the way, Larry explains the aapt, aidl, dx, dexdump and llvm-rs-cc tools.

These seem to have changed at some point between release 19 and release 23 because it was not found in the same location on my PC and the following web page now shows different information than in this clip:


Larry mentions that the systrace tool will be covered later on in this course.

SDK Command Line Tools

This clip describes the graphics asset tools Draw 9-path etc1tool.


This is a monkey

Larry also explains the sqlite3 utility and the UI/Application Exerciser Monkey tool, a.k.a. the monkey tool

You can use the Monkey to stress-test applications that you are developing, in a random yet repeatable manner.

Despite the similar name, the monkeyrunner tool is not related to the monkey tool. Read more about this here

Finally, Larry describes zipalign, an archive alignment tool that you can read about here

For more information on all of the SDK Command Line tools see

Installing Intel’s HAXM Support

The Android emulators are managed by the ABD manager.

In order to get significantly better emulator performance on Intel chips, it is necessary to install Intel’s Hardware Accelerated Execution Manager (HAXM)

Modern Intel hardware includes virtualization technology, and this is what is used to accelerate the emulator.

This software can be installed on Windows, Mac OS X and Linux, and Larry provides more details on this.

Larry demonstrates how to install this software from android-studio/sdk/extras/intel/Hardware_Accelerated_Execution_Manager

Installing the Google USB Driver

Information on using Hardware Devices is available from Google here and information on the Google USB driver is here.

Larry shows you how to uncover the developer options easter egg on your Nexus, and then enable USB debugging.

Next he describes how to update your driver software on Windows.

After this is done, you should see Android Composite ADB Interface listed in your Device Manager.

Continue to Part 5 – Creating Apps with Android Studio

Building and Debugging With Android Studio

Building the Project

This module continues to work with the app developed in the previous module.

Running the App
Debugging the App

Library Projects With Android Studio

Creating and Using a Library Module
Manual Library Migration
Using JAR Files

Building a Release Package

Creating Keys
Building the Release Package

Advanced Features

Refactor Support
Code Analysis
Project Navigation
Advanced Debug Features
Version Control System Integration
Module Summary

The Gradle Build System

Gradle and Groovy Background
Gradle Concepts
Gradle Configuration Phase Demo
Gradle Execution Phase
Miscellaneous Advanced Features
Gradle Plugins

Dependencies With Maven
Module Summary

The Android Gradle Plugin

Android Basic DSL
Advanced Android DSL
UI Integration

Related Courses

Exploring Android Studio is the 4th course in the Android learning path, which is aimed for .NET developers who are looking to learn how to work with Android and develop apps for the platform.

If you want some additional UI features to go with Cordova, and especially if you already use Angular JS, you should check out Steve Michelotti’s course Building Mobile Apps with the Ionic Framework and Angular JS.

Larry keeps mentioning Gradle throughout the course. If like me, you don’t have any experience with Gradle, you could watch the last two modules of the course before some of the earlier ones.

Alternatively, you can watch Gradle Fundamentals by Kevin Jones

If you are interested in Customizing Gradle, Tim Berglund has produced a Play by Play

Recommended Speed: x1.5

2 thoughts on “Exploring Android Studio

  1. Pingback: Building Mobile Apps with the Ionic Framework and Angular JS | Zombie Code Kill

  2. Pingback: Building your First Xamarin.Android App from Start to Store | Zombie Code Kill

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s