Thanks for the reply.
I'm not sure that I will embark on editing the source myself. I will
mention that there are two ways I've been able to get this working for
the emulator where both Android's Browser and Opera Mini use the
proxy. What's confusing is that WebDriver obviously doesn't use
whatever reference these other browser use in determining the path of
network communication.
One is by launching the emulator with the -http-proxy flag found here:
http://developer.android.com/guide/developing/tools/emulator.html
I was surprised that WebDriver didn't use this proxy when the whole
emulator instance was set to use this. The other browsers worked
correctly when launched this way.
The other way to get a proxy working on the emulator (might work for
physical device but haven't tested) is to update the device's
database.
1. Shell into the device: adb shell
2. cd /data/data/com.android.providers.telephony/databases
3. sqlite3 telephony.db
4. update carriers set proxy='your-proxy-hostname', port='your-proxy-
port'' where _id=2
5. then kill the com.android.phone process so it picks up the new
setting
Both of these methods are applicable to the Android Browser and to
Opera Mini. So what are they doing that is different from WebDriver?
That would be direction I might look at versus implementing
reflexion.
If I do get a chance to look at this further, I will submit more info
or a patch to you.
Thanks.