Android 4.3 WiFi Issue
Since I've updated to Android 4.3 on my Galaxy Nexus (Maguro), I've noticed an issue with the WiFi. Sometimes, when entering the range of a known WiFi network, my device doesn't automatically connect, as if it doesn't know I'm in range or hasn't scanned for the WiFi networks nearby. This issue has been reported on the official Google Bugs tracker here. -->
If you have this issue, please visit this link and star/report it so that Google will know. For now, I've found a few ways to resolve the problem, and wanted to share them.
When I go into Settings < Wi-Fi to view the WiFi networks, I notice that at first it shows the network I'm trying to connect to as "Not in range," but then it immediately connects to it.
I also found that turning WiFi off completely, and then back on again allows my device to see the network and connect.
Both solution 1 and 2 are manual fixes. While both are easy to do, they require you to actually take action to reconnect to your network. This can cause you to miss notifications, etc. if you aren't aware of what's going on. I didn't like that too much, so I made a simple Tasker
profile to help.
This requires a little bit of knowledge about Tasker, but I'll try to explain it well enough that anyone can get the profile setup and working.
First we will create a Task called "Wifi fix." This task will have 2 simple actions.
- Disconnect Wifi
- Reconnect Wifi
Now we need to create a profile to trigger the task. I'll name it "Wifi Fix Profile."
This is going to have 3 context triggers that all have to be met before it will execute our Wifi fix task, all are state contexts.
- First we will use Wifi State Connected, with the Invert Checkbox checked
- Then, Variable value "%WIFI" matches "on". Both "%WIFI" and "on" are case sensitive, so be careful.
- Lastly, Display State "ON". This one is optional. I added it because I don't want wifi constantly disconnecting/reconnecting while my phone is asleep if I'm not near a network. So instead, the profile can only trigger while I'm actually using the phone.
After that, all you need to do is go into Profile Settings (by long pressing the profile name) and set a cooldown. I use 5 minutes, you can use anything (or nothing) you want.
Basically, what this profile does is when your wifi is on but not
connected to a network, then it forces a scan for wireless networks by disconnecting, then reconnecting wifi. Simple, and it works.
Now that we have a workaround, back to the problem. Based on the solutions listed, namely solution number 1, I believe that the problem lies with how often/ when WiFi networks are scanned for. This could be due to the new WiFi Setting Google added in 4.3, "Scanning always available". It has been reported that disabling this does not fix the issue, but I haven't tried it myself. I also tried changing the wifi scan interval in build.prop, but that didn't seem to make a difference.
Hope this helps some of you!