19 December, 2009

Upgrading Android ADP1 to Donut

I just finished upgrading my ADP1 to Donut. The icons and such look a little more polished, and supposedly the new Google Maps supports turn by turn. If the new Google Maps app works well, I may pick up a phone mount accessory for my car.

Since I use the AT&T pay as you go plan, I also needed to update the Phone app to ignore the "last transaction" messages as I did with cupcake. For those of you that are interested, you can download the modified source and compiled apk:

* PhoneUtils.java
* Phone.apk

The instructions are the same as for cupcake, so see my earlier blog post for instructions.

I have recently tried CyanogenMod on my ADP1, and this patched Phone.apk has been working fine.

17 November, 2009

Google's Intriguing Software Distribution Model

I just read this article (http://tinyurl.com/yzqjmkq) regarding Google providing it's software "less than free".

Apparently Google will share ad revenue with carriers that release their phones using Google's license rather than the FOSS license. The article goes on to say that they suspect Google may do the same with Chrome OS when it comes out.

I find this whole model of software (OS?) distribution rather intriguing. It will be interesting to see how the industry reacts. Microsoft had to discount XP in order to compete with Linux in the netbook space. How will they compete with Chrome OS if Google is basically paying to preload it? Will Microsoft try to leverage Bing in the same fashion? How will this affect Apple? Apple Mac customers seem content to pay a premium, so it would seem that their PC market would be safe for the time being. Although the iPhone is already expected to be eclipsed by Android in terms of market share, what will this mean to the iPhone price point and/or margin?

In any case, it seems healthy to see in the near term. Competition is a good thing.

08 September, 2009

Experiences using the ADP1 on AT&T Network

I have had the Android Developer Phone (ADP1) for about 9 months now. I have been using it on the AT&T pay as you go plan with pretty good success. So far here is what I have discovered with regard to this combo:

* The phone works fine on the AT&T network for making and receiving calls.
* The AT&T data plan is a pretty good deal. For $20 you get 100MB for 1 month - which lasts well beyond the month for me.
* Downloading and installing both free and paid apps works fine.

* No 3G. I've only had EDGE access. Perhaps I need to re-configure my APN, but I heard that the G1 does not support the 3G frequencies necessary for the AT&T network.
* The annoying "Last Transaction" messages unless you patch it (see my earlier post).
* Android updates need to be manually applied if you want them. You have to go to the HTC website(http://www.htc.com/www/support/android/adp.html), download a couple of files and go through their update process. It's no biggie really, just 1 more thing.

I could go on, but anything else would be universally true for any ADP1 (or presumably a T-Mobile G1).

Using the Android Developer Phone 1 on AT&T

The Android Dev Phone (ADP1) working on AT&T, you have to add the AT&T access point entry to your phone when you get it. Here are the steps you need to do:

1. Go into settings and select Mobile Networks
2. Select Access Point Names
3. Click the menu button and select new APN
4. Enter the following info and save:
Name: AT&T
APN: wap.cingular
Password: CINGULAR1
Leave all other fields at their defaults.

If you are trying to do this to activate a brand-new ADP1, the steps to define the APN are a little bit different but easy nonetheless if memory serves. You can activate the phone without the cell network (using wifi), but it requires a little more effort.

23 July, 2009

Avoiding ATT "last transaction" messages with the Android ADP1

I have been using ATT pay as you go for almost a year. About 6 months ago, I picked up an ADP1 and have been using it on my ATT pay as you go plan ever since. It worked just fine for the first few months, especially considering the fact that ATT has a decent data plan that you can get with it (2G only for the ADP1, however).

The one annoying thing was ATT "last transaction" balance nag messages every time you use the phone. With a regular phone, it is not too bad since you only get these nag messages when you make voice calls. With the ADP1 (and presumably any smart phone) these messages come much more frequently due to data access. If you haven't used the phone is a while, you end up with a huge stack of these messages that have to be dispatched before you can use the phone for anything but answering calls.

So I was left with two choices - either disable data access on the ATT network, or fix the problem. I decided to fix the problem. I downloaded the Android source for version 1.1, found the spot in the code to make the change, recompiled the relevant module, and installed it. Just this week I did the same for 1.5 (cupcake).

It turns out that these nag messages are unsolicited USSD messages. The PhoneUtils class in the Android Phone app is what handles USSD messages in Android. I modified it so that USSD messages that result in a simple alert beginning with the text "The last transaction cost" are discarded.

If you would like to do this yourself, I have attached the modified PhoneUtils class, as well as the complete Phone.apk. Either way, once you have newly modified the Phone.apk, follow the following instructions to get it loaded onto your ADP1:

* Android development kit
* Phone.apk
* Mini sdcard
* USB cable

Installing the patched Phone app:
1. Copy Phone.apk to your sdcard.

2. Attach your Phone to your computer via usb

3. Open a shell on the phone witht the command
adb shell

4. Login as root
su -

5. Mount the system dir as writeable
mount -o remount,rw /dev/block/mtdblock3 /system

6. Go to the dir where the built-in apps are stored
cd /system/app

7. Backup the existing Phone app (in case you change your mind)
cat Phone.apk > /sdcard/Phone.apk.bkp

8. Remove the old Phone app
rm Phone.apk

9. Install the replacement Phone app
cat /sdcard/Phone_1.5_Att.apk > Phone.apk

10. Switch mount back to readonly
mount -o remount,ro /dev/block/mtdblock3 /system

If you get an error on the last step that filesystem is busy, simply reboot your phone to restore the system dir as read-only.

That's it, your all set to not be annoyed by ATT nag messages.

One final note, since you won't be getting any last transaction messages, you may want to actually know your balance. If so, you can simply ask for it by dialing *777# on your phone.