Developing/Installing apps on Android Atrix
I just bought an Atrix from my carrier, AT&T. It’s a groundbreaking device: dual core processor, 1 gig ram, HDMI port. The battery life is stupendous.
Anyway, first day I made a simple app from a sample I found. You can use either Eclipse, or NetBeans to make an Android app.
Here’s the developer setup for making an Android app for Android 2.2 (Froyo I think):
- Unzip the Android developer toolkit on your machine. Start up the “android” executable in /tools. Then, from that, you can install the needed Android SDK and Android SDK Tools for your version of the OS. For me that was android-8 sdk and revision 10 of the tools. Install the samples for your version too.
- Create a virtual device based on that from the Android GUI. No advise on that.
- Install an Android plugin into your IDE. Both Eclipse and NetBeans have them. Sorry no links but they are easy enough to find.
- Create an app, run in the emulator from your IDE via the plugin. Very cool.
I made a small RssReader app (thanks to automateddeveloper.blogspot.com) and loaded it here: https://bitbucket.org/ivystreet/project/src. This project is an Eclipse project, but I will be making a NetBeans project soon for another company I know as a marketing treat for them; hopefully its a bit better.
At first I had a little problem loading the app (bundled into an .apk) onto my Atrix using adb. “adb” is the android app manager over a USB cable, command line utility. But actually, the solution to load apps on an Atrix via USB was simple:
- Go to Settings–>Applications–>Development and turn on “USB Debugging.”
- Plug in your Atrix via USB cable.
- Go to Top Menu Pulldown–>USB Connection and select “USB Mass Storage.”
- In a terminal type <your path to>/adb devices. You will see your Atrix listed.
- In the terminal type <your path to>/adb install (path/name of app).apk.
That’s it, you have installed your application.
Some sites want to call this “side-loading” or “hacking.” I kind of think the word “hacking” is something the newer dynamic language developers use in a different context than a seasoned Java developer like myself, and those terms don’t imply doing something you shouldn’t be doing anymore so don’t let them scare you. Using adb is a perfectly fine method to load apps and absolutely necessary for an Android developer.