A weird Android ‘Obtaining IP address’ Wifi issue workaround
Ever since I bought my android phone, iGalaxy (Samsung Galaxy S), it grew to hate me more and more until the beginning of this year; it had enough. Little Android finally refused to work accordingly. Until recently, I’ve been suffering of an irritating issue. But honestly, I don’t blame it for what it has done, I hate it; it’s only natural to hate back whoever hates you.
The issue that I was facing was a Wifi issue: a bug that renders the phone incapable of connecting to a specific wireless network! Yes, it would connect to other wireless networks except a specific one. Unfortunately, in my case the specific wireless network was my home wireless network. This issue is known as: Wifi obtaining IP address issue.
Note: If you are searching for a workaround, go watch the video at the end. Also, check the update section in the end of the blogpost. Comments might also help.
The name of the issue says it all. Android fails to obtain an IP address from a wireless router: connection attempt fails. It goes through stages in an infinite loop:
- Obtaining IP address
Here’s an animated image of the bug.
If that’s not enough for or you prefer a recording of it, here’s a video of it.
Such problem had brought all people to speak, the noobs and the experts, all with one aim: a bugfix. After all, what is an Android phone if it was unable to connect to a wireless network? A mere phone. However, no bugfix that I am aware of exists.
Many have accused our wireless routers for being defective. However, I refused to believe that. Partially because the very same Android device used to work properly with the same router, but mostly because executing a factory reset made the device recover the ability to connect to the very same router – for a couple of days, that is. Others have suggested to set a static IP address, which makes sense, but failed for some of us – including me. Other methods were proposed, but I, along with others, found none of them working for us.
I for one am not interested in Android at all, it’s a disgrace to the Linux family – in my personal opinion. And because of that, I stopped pursuing a solution. I gave up. Ever since January ’11, till few days ago, my phone had never been connected my home wireless network.
Days ago, some of my siblings bought new mobile phones, Android mobile phone, Android mobile phones manufactured by Samsung, Android mobile phones manufactured by Samsung and of the Galaxy class: Samsung Galaxy Pro. Two were actually bought. The price of such a promising device was quite cheap; 48 KD per unit, quite a bargain.
About an hour after the purchase, they were running and connected to my home wireless network flawlessly. Call it jealousy, but I wanted mine to do that as well. (Update: one of them caught the bug! XD)
It was 5am when I managed to get mine connected. I was shocked, it worked! That was good news, but the sad news was that I did not know what I exactly did to get it to work; I was trying everything! I had to keep it within the wifi coverage area for almost a complete day. That’s when I managed to acknowledge the procedure I had done; it made no sense at all. The procedure was exactly like making a baby who’s refusing to cry, cry.
- Ask baby to cry> Baby refuses
- Give baby candy> Baby becomes happy
- Take candy from baby > Baby cries
Now, this is what I did:
- Turn off Wifi
- Turn on static IP option
- Turn on Wifi
- Turn off static IP option> Connection establishes
The only difference between those two situations is that there is more details to my workaround. With turning on the static IP option one had to fill in the IP address, Gateway, Netmask, and DNS fields. And apparently, they have to be valid. Now one thing that adds a ton to the WTFness is the DNS fields. Android provides two fields, if both are filled, the workaround works, if less, then it fails!
Of course this is a workaround and not a solution which means this has to be done every time one wished to connect to the same network that the little Android hates.
Now, for those who face the same issue, here’s a guiding video that might get yours working.
[Update] Other workarounds
Here are some other workarounds/solutions.
- Brandon’s workaround
I have found an easier workaround – open Allshare (I think it is a built-in app) it will prompt that you need to connect to WiFi, select your network and it will connect.
Note: For me, it would only work if I turn off the wifi before starting up the AllShare application. BTW, I still use this method.
- Mr Mobinga’s workaround
Go to Settings -> Wireless & Networks -> Wifi Settings -> Press Menu -> Advanced. Then check “Best Wi-Fi Performance”. Uncheck “Use Static IP”. Then for the most important scroll down to DLNA IP settings. Then click “Check to use DLNA when no DHCP server is available.” Magic. It works awesome.
Note: This workaround worked on Android 2.3.5 (HTC Wildfire S), so some of you might not have the mentioned options if your Android firmware is not the same or if you’re using another phone model (Like me).
- Mehul’s workaround
i Just clicked on Add Network . Wrote in my correct ssid Name and password. There’s no same issues now.. connects flawlessly ;D
So basically, all you have to do to attempt this workaround is going to your wifi settings, scroll to the bottom and press on “Add WI-FI network”. You’ll be prompted for “Network SSID” and “Security type”. These should be filled according to your wifi router/hotspot settings. Make sure you write the name correctly, and choose the correct security type. If the network is secured, you’ll be asked to enter the passcode. Once done, if you’re as lucky as Muhal, it should be connected.
Note: This workaround has been reported working on Android 4.0.3 (Samsung Galaxy Note N7000), might not work for you if you own a different device or running a different firmware. Haven’t tested it myself yet.
- Last resort
Hey, if you’re still having this issue, you can do a factory reset – it fixed mine! … Though that also means it’s gonna wipe everything, apps/contacts/files, so you have to do a backup!
Many thanks to all contributors, all who are sharing their own workarounds. :)