“Ask to Join WiFi” Bug in iOS
After my iOS 5 devices let me down in field testing at Koblenz by not automatically joining the WiFi I set up for them, I have conducted further testing and got in contact with Apple Engineering to sort this issue out. It appears there’s a bug in iOS with regard to the setting “Ask to Join WiFi networks”. Until this is resolved (most likely with an iOS Update) it is important to disable “Ask to Join WiFi networks” in Settings->WiFi.
Here’s a verbatim copy of the bug I filed with them after a bit of back and forth (http://openradar.appspot.com/10827088)
08-Feb-2012 03:25 PM Johannes Rudolph:
Device running iOS 5 (issue verified on iPad2 Wifi+3g and iPhone 4) won’t automatically connect to a known, WPA2 encrypted WiFi while an App is running in the foreground and Settings-Wifi->”Ask to Join Networks” is enabled”. Devices will automatically connect when “Ask to Join Networks” is disabled.
Steps to Reproduce:
0. Go to settings, WiFi and ensure “Ask to Join Networks is enabled”
1. Connect the device to a WPA2-AES encrypted WiFi to ensure the device “knows” the WiFi.
2. Move out of WiFi reach and wait for the network status indicator to refresh accordingly
3. Launch any App, e.g Safari and observe the network status indicator still reporting 3G/Edge
4. Move back into reach of the known WiFi.
The device should automatically join the known WiFi.
The device does not join the WiFi until the App running in the foreground is terminated. It then takes approx. 3 seconds to connect to the WiFi.
I could not observe the same behavior on an iPhone 3G running iOS 4.3.2, the iPhone3G connected just fine regardless of “Ask to join Networks” setting.
I have tried running an App in the foreground that has UIRequiresPersistentWiFi enabled but could not observe any change in behavior.
This is a serious bug!
My App depends on automatic connection to a WiFi whenever a known WiFi comes into reach and now I would have to educate my Users to correctly configure their device. The “Ask to Join Network” should have no influence whatsoever on the behavior observed when joining a _known_ WiFi, the only thing it should do is bring up a dialog when only _unknown_ WiFis are available.
All WiFis I tested with had SSID Broadcast enabled and had a fully functional DHCP (in case this is important).
Previous to filing this bug I have consulted DTS with follow up id 190674176 and it was recommended I’d file a bug.