maxresdefault

How to setup Eclipse for Android Wear development

Last week at Google I/O, the Android Wear platform was officially launched, together with two smart watches from LG and Samsung.

I wanted to play around with the new APIs for Wear devices for an upcoming blog post on how to use MQTT with you smart watch, but I had to do a few things to properly set up my environment, and I thought I’d share :-)

I am assuming that if you read this blog post you have already a running, up-to-date, installation of the Android Development Tools.
Also, you should have installed, with the SDK manager, the Android 4.4W (API 20) SDK + Samples, as well as the Android Support Repository. And if you’ve done so already, it’s likely that you’ve been stuck not being able to compile an Android Wear project properly, for some classes seem to be missing…

Check out the following tips, and feel free to post a comment to report how it went for you!

com.google.android.support:wearable

The UI support library for Wear contains, among other things, a set of helpers to build UIs that work well on both square and round displays. In order to add this support library to your workspace, you must go find the file ./extras/google/m2repository/com/google/android/support/wearable/1.0.0/wearable-1.0.0.aar in your Android SDK folder. This is the support library in the AAR bundle format, that we need to convert in a project we can use in Eclipse.

  1. First, copy the .aar file to a location of your choice, change its extension to .zip, and unzip it
  2. In Eclipse, create a new project from this unzipped folder, using the File > New > Android Application Project wizard Capture d’écran 2014-07-04 à 10.10.59
  3. Once the project is created, there are two extra steps to perform to make it properly usable by your future Android Wear projects. First, is to move the classes.jar file in a “libs/” folder that you should create in the project. Second, is to edit the project preferences to make sure that the project is setup as a library project targeting Android API 20 (see screenshot below). Capture d’écran 2014-07-04 à 10.12.59

If you end up with something like this, you’re in a good shape! Capture d’écran 2014-07-05 à 12.14.55 You can now create you own Android Wear project, or import one of the samples that come with the SDK, and add the Wear support library as a dependency, as depicted below:
Capture d’écran 2014-07-05 à 12.45.19

WatchActivity is missing

Now you may notice that the “Blank Wear Activity” project template generates an Activity that extends WatchActivity, which is nowhere to be found in the SDK. Never mind this error, just extend a regular Activity instead and you should be just fine. See this StackOverflow answer.

Timeout when debugging over Bluetooth

ADB is an amazing tool for everything debug on Android platforms, and the ability to deploy apps on your watch and debug them over Bluetooth is really awesome. The setup of the debug link (which is actually done through your phone’s ADB connection) is well documented, but since the connection is rather slow you will need to update ADB connection timeout settings in your preferences.

Go to Preferences > Android > DDMS > ADB connection timeout (ms) and set a timeout of 30s (30000).
Capture d’écran 2014-07-05 à 13.00.57

3 thoughts on “How to setup Eclipse for Android Wear development”

  1. Hello, Thanks for the wonderful information. This was very helpful. Can u also tell me how to replicate the applicationId present in gradle file into eclipse.

  2. Being an Android developer, I was always having dream of developing an app for Android wear. Now, this post can really aid me to make up a setup so that I can start with its development. Recently bookmarked this and planning to implement these easy elaborated steps this weekend.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>