So, last week I found myself immersed in Android again, figuring out for a client to what extend Android can support proxies. For future posterity, I’ve written this post to document what I found.
User-level proxy support
Proxy support under Android is somewhat of a mixed bag. What you will find is that is it possible to setup a proxy server for your 3G connection, but that it is not possible to setup a proxy connection for your WiFi or VPN connection. A system-wide proxy cannot be setup as well. Mind you, this is based on what is possible under the default Android settings. The Samsung Galaxy S, for example, does support the use of a system-wide proxy, but this is a Samsung-addition.
A 3G proxy can be set via the APN settings (Settings →Wireless Controls→Mobile Networks→Access Point Names, then select the active APN):

Edit APN settings
This does give you a proxy for the 3G connection you are currently using, but most probably you want to use a proxy for your WiFi. As of this moment (September 2010), this is not possible without rooting your handset. I won’t go into the details of that operation, as there are many sites dealing with that issue. Instead, I’d like to point you to Xda Developers, whose many forums are bound to contain rooting instructions for your particular Android handset.
If you do have a rooted phone, you can use a tool called.
It is possible to have a UI popup that handles the configuration of a proxy for wifi but the settings that it stores are harshly discarded by Android when it configures a network connection.
One thing is for certain: Google needs to step up to the plate to make Android proxy friendly if it wants to break into the enterprise market.
OK, so I promised some more details on the current port of Android to the HTC Diamond. As I referred to before, there is a porting effort underway to get Android running on the HTC Diamond (both the GSM and CDMA version). Most progress is chronicled on the (ever excellent) XDA-developers.com site, but there are several changes.
Running Android on your HTC Diamond means installing 3 different things to the internal storage of the Diamond (or an SD-card for the Topaz and Rhodium):
- A Linux kernel (found here)
- A rootfs for booting the kernel and Android (found here)
- An Android distribution (found here).
- Oh, and a configuration file for configuring the Android build (you are probably best off getting the first version out of the full build linked below).
If you’re not familiar with booting Linux or Android, you may want to download everything in one package, which can be found in this thread on XDA. After downloading, unzip everything in the root of the Internal Storage (for HTC Diamond) or in the root of your SD-card for all the other models. Copy the startup config for your device
A few attention points:
- Disable the PIN-code on your SIM-card! The current ported version does not handle SIM PIN-requests properly (it gives a pop-up but does not unlock the SIM properly) No longer applicable, with the current rootfs PIN requests are handled properly.
- On the HTC Diamond, change the file in <tbd> (while running Windows Mobile) and look for the line with cc-cache=100 in it. Change this to cc-cache=20. This prevents Android from pre-loading a lot of applications upon startup, slowing down your phone
- The clock will start drifting a bit, about half an hour a day. This is annoying, but the developers are aware of this.
For me, this is the end of the line, as I have sold my HTC and instead opted to go the Android route entirely, buying myself a SonyEricsson Xperia X10
Found a great read on why Android or iPhone is the wrong question.
While Apple may have opened the proverbial Walled Garden, it is Google, with its aggressive Android offering, that aims to obliterate it. Make no mistake about it; Apple was the pioneer with the amazing revolutionary product. Also, with no iPhone, there is no Android. This is not to say that Android copied iPhone, but rather the impetus to adopt and trust Google’s Android offering was driven by a market dynamic that resulted directly from the iPhone’s success.
via Android or iPhone? Wrong Question « abovethecrowd.com.
Indeed, the iPhone represents only a very small portion of the global phone market. But it is the other portion of that same phone market that is the target for Google/Android. Google does not necessarily want to compete with the iPhone head-to-head (although they can!), but is more looking towards converting people that use a heavy feature-phone these days but may make the switch to a smartphone if a compelling enough offer comes along.