November 12, 2015

Getting Started with Android Emulators

To develop and test Android applications, you will need a physical device or an Android emulator. The Android SDK has an Android Virtual Device (AVD) emulator that runs on your computer. AVD Manager is a graphical user interface that you can use to create, modify, and manage Android emulators.

To open the AVD Manager:
  • In Android Studio, select Tools > Android > AVD Manager or click the AVD Manager icon () in the toolbar.
  • From the command line, navigate to <sdk-directory>/tools and execute android avd.

AVD Manager from the Command Line

If you open the AVD Manager from the command line, you will see the UI similar to the one below:

To create an Android Emulator, click the Create button. Fill up the name, and select the device, target, CPU/ABI, and skin. You can also add hardware functionalities, like keyboard, camera and SD card. Click the OK button to create the emulator.

AVD Manager from Android Studio

If you open the AVD Manager from Android Studio, you will see a different UI:

To create an Android Emulator, click the Create Virtual Device. Select a device configuration then click Next (If you want a new configuration, click the New Hardware Profile instead. Select the System Image OS name and API Level then click Next. Fill up the name and check the configuration then click Finish.

Starting the Android Emulator

You can start an emulator by selecting it in the AVD Manager and clicking the green run image (or the Start button if you run AVD Manager from the command line). When running an app from Android Studio, it will install and launch on the running emulator. If an emulator is not yet open, you can launch it in the Device Chooser dialog. From the command line, you can use the adb install <apk-path> to launch the APK in your emulator.

x86 Emulators and HAXM

When using an x86 system image for an Android Virtual Device (AVD), you should install HAXM (Hardware Accelerated Execution Manager). Check out this post on how to setup and install HAXM.

Using an Android emulator allows you to see how your app will look and behave in an actual device. There are some limitations though (like you can't call from emulators). Read more about the Android emulator here. Other than using a physical device or an AVD, you can also use other third-party emulators. I am using Genymotion most of the time for development.


October 26, 2015

Learning Android Development

Want to learn how to develop Android apps? Android is an open-source mobile operating system. It is now the most popular mobile platform. Android now has 1.4 billion 30-day active users globally. And aside from phones and tablets, Android is now in wearables like smartwatches (Android Wear), televisions (Android TV), cars (Android Auto), and IOT devices (Brillo and Weave). There is a lot of potential in the field of Android development.

The best place to learn is of course the official Android developer site, developer.android.com. They have guides, tools, articles, training materials, and other resources there. Read the basics; it will be helpful. The Android Developers YouTube Channel is the home of Android demos, tutorials, and other updates about Android development.

There are also online courses (most of which are free) that you can take to learn about Android app development. Google has partnered with Udacity to develop a Nanodegree Curriculum for Android. Udacity's Nanodegree is both a curriculum and a credential, developed in partnership with leading technology companies. This is $200/month (with 50% refund upon completion).

The best way to learn Android development though is by doing it hands-on. Try making apps while reading Android materials or taking Android courses. It doesn't have to be publish-ready at first. Experiment and learn from your mistakes.


October 15, 2015

SEIPI-ASITEP Talk

Ramon Pastor and I were invited to talk about Mobile Applications Development at the 3rd General Membership Meeting of SEIPI-ASITEP. ASITEP (Association of IT Executives and Professionals) is a networking committee of SEIPI(Semiconductor and Electronics Industries in the Philippines Foundation, Inc.).

The event was held at Technopark Hotel, Greenfield Autopark, Sta. Rosa, Laguna on October 9. Ramon talked about iOS app development while I talked about Android app development. The time was not enough to do a hands-on workshop though.



More photos during the event is available in ASITEP's Facebook Page