Archive for December, 2010

Flash Builder Burrito/Hero Preview release on Lynda.com

For those of you who are Lynda.com subscribers, my preview release of Flash Builder Burrito and Hero was released today.

Accessing Localhost from the Android Emulator

I have been working quite a bit this week with the Android Emulator that ships with the Android SDK. Works really well and is great for testing my AIR/Hero applications.

One interesting tidbit: I had a local web server installed on my PC and my Flex application called a Remote Object from this server. Everything worked fine in the AIR tools that shiped with Burrito. However, the application would not work at all in the Android emulator, I finally figured out that the emulator calls localhost from 10.0.2.2 instead of 127.0.0.1!! I changed all the references from localhost to 10.0.2.2 in the application and everything worked great in the emulator! Hopefully, this will save folks some time as it cost me about three hours! Ugh….

Gingerbread

Google announced Android 2.3, code named Gingerbread today! It should be making its way to some devices in a few short weeks. They also announced a new Google branded phone, known as the Nexus S that will be available from Best Buy for $529 unlocked or T-Mobile for $199 with a two year contact.

Here is a great video detailing much of the new Gingerbread functionality.

Samsung Galaxy Tab

I have had my Galaxy Tab for a few months now and am really enjoying it. I have spent time with the iPad as well, and think it is a great device but prefer the Tab for a number of reasons. Despite what Steve Jobs says, I really think a seven inch tablet is much more portable. I can easily fit it into my coat pocket, and I take it with me everywhere. It is very easy to pull out when I am in cramped quarters, like the A train in Manhattan and it does not attract a lot of attention because it looks like a book or a Kindle, not like the $600 device it is. Battery life is good, performance is great, web browsing is great, my only complaint about the device is the price. I do feel it is a little too expensive and I hate the lack of a wifi version. I’m sure the prices will come down and thus is the cost of being an early adopter. I love being able to develop applications for the device and the performance of AIR applications has been great. I do feel the device is much more hacker friendly than the iPad, and love having access to the file system and the ability to watch movies and play music not through iTunes. I also enjoy the dual cameras though sometimes feel a little silly holding up such a big device. You get used to it though.

I was disappointed to find that many stock Android applications did not use all of the available screen real estate and instead had big, ugly black borders around them. After being frustrated for the first week, I finally found a solution that I am posting below:

1.Download an application called Spare Parts from the Android Market and install it.
2.Open Spare Parts, and scroll down to “Compatibility Mode”.
3.Uncheck Compatibility Mode, and then recheck it.
4.Exit Spare Parts.
5.Reboot your Galaxy Tab.
6.Once it boots, open Spare Parts again.
7.Scroll down to “Compatibility Mode” and uncheck it.
8.Reboot again.

All the typical stock Android applications will now use all of the available resolution. These applicatios, to me, look much better than their iPhone counterparts on an iPad.

Of course, the Tab needs many more “Tablet” specific applications but these will be coming with the next version of Android. From everything that I have heard, the Galaxy Tab will be one of the first devices to get this operating system update as well so I am looking forward to that in early 2011.

Overall, very, very happy with this device.

Tips and Tricks for Using the Android SDK with AIR 2.5

During my free time, I have been developing some applications for my Android devices using Adobe AIR 2.5. I will soon be hosting a series on Lynda.com on AIR for Android development as a well as a preview series for them on Flex Burrito and Hero development. About a year ago, I tried my hand at Objective C development for iDevices and found the tool set and syntax very off putting. I am happy to report that my feelings about Android are the exact opposite!

I have really enjoyed using the development tools available in the Android SDK. I have made extensive use of the DDMS tool available in the tools folder of the SDK; this allows me to take a screen shot of my device and broadcast it on the computer screen, which is very useful for developing training material. I also found it useful to include the path to the Android SDK in my system environment PATH variable to limit switching directories.

I have been working with a Droid X and a Samsung Galaxy tab for testing. When I first started,  I had a difficult time getting the drivers working for both of these device using Windows. I tried to use the default USB drivers included with the Android SDK but I could not get them working. Once I downloaded the respective drivers from Motorola and Samsung everything worked fine. In order to do testing,  you must be sure that the devices themselves have USB debugging enabled which can be done from the settings menu of the device.

I have also been using the Android emulator that ships with the Android SDK. One gotcha here is that you need to publish an Android Emulator release of your APK file in order to use with the emulator. You can choose a radio button using Flash CS5 to produce this APK or pass the ADT a compiler argument of -emulator if you are using Flash Builder.   If you are doing AIR development, you have to install a special version of AIR on your emulator “virtual device”. I found it very difficult to locate the emulator version of AIR. I finally it in Flash CS5 under Program Files/adobe/adobe flash cs5/aek2.5/runtimes/emulator. You can then install the runtime using the Android ADB tool with the install command. I lost a few hours of development on that one, but now AIR 2.5 is permanently installed on my virtual phone and these virtual devices persist between sessions.

I have enjoyed exploring the mobile specific API’s in Adobe AIR 2.5 including the accelerometer, gestures, geolocation and much more, I look forward to posting more about these topics. AIR is a great way to develop Android applications, and I am getting more excited about the Android platform every day!