Closest cell tower 1 Km, iPhone 3G, Wi-fi mode, iOS 4.0, Orange network.
With device held gently by edges:
signal avg 90 (outdoor, line of sight to cell tower, same altitude)
signal avg 😯 (indoor, line of sight to cell tower, same altitude)
signal avg 60 (indoor, no line of sight to cell tower, same altitude)
signal avg 4O (outdoor, no line of sight to cell tower, ground level)
With device cradled in hand a average decrease of signal by about 20 in all cases and whatever finger configuration.
Turning 3G on causes a average decrease of signal by 5 in all cases.
The connection strength bars shows 5 bars in all cases.
Absolute minimum experienced : 19, absolute maximum 96.
The thing to take away from all this is that if you already had a very bad connection under 20 and subtract the hand attenuation of about 20 you are left with no signal, and it did not hep that until iOS 4.0.1 a bad connection with a 20 strength would have shown 4 or even 5 bars.
The application used to test gets the signal strength from private calls to apple’s CoreTelephony framework, in a effort to help the iphone signal testing going on share a common base i am providing the application to anyone, please let me know what are the results of your tests and feel free to contribute to the code on github.
The application is named VAFieldTest , it’s code is under a open source license and can be found at http://github.com/valexa/VAFieldTest , you need Xcode and a iPhone developer account to compile and run it.
iOS 4.0.1 update
same behavior as before, with the difference that now the connection bars properly reflect changes in the strength (I 1-19, II 20-29, III 30-39, IIII 40-49, IIIII 50-99 ) , with previous versions they just show 5 bars for any signal strengths above 25.