Android java.net.UnknownHostException: Host is unresolved

Viewed 77274

This code doesn't work:

URL         url   = new URL( xmlPath );
InputSource input = new InputSource( url.openStream() );

all the time, resulting in an UnknownHostException, even when the host exists, has been hit successfully using the same code if from a different development host (machine), and also from a browser.

I'm probably out of line asking this question again, a repeat of Android java.net.UnknownHostException: Host is unresolved (strategy question). The forum software would not allow me to comment on the unsatisfactory answer to that question (in order to solicit more attention to the solution I ultimately found). Perhaps I'm not popular enough yet to be given that privilege. In the meantime, I'm essentially re-posting the question and a different answer.

Basically, I accept that maybe the Android device has a hard time with DNS under certain circumstances, but I've tried, for example the anddev.org example of how to use the SAX parser, and it worked on one machine I have and not on another.

Edit: As noted, I know a working answer and will post it.

I am a) asking a question (that's already been asked and unsuccessfully answered) and b) answering it for the benefit of those for whom my answer will be useful.

18 Answers

I have seen this on a phone as well (while doing USB debugging). The solution was to disable WiFi, and re-enable it.

My problem was when sharing the internet from the computer via WIFI, after ethernet connection was lost and reconnected I couldn't achieve connection on the phone. This was fixed by restarting internet sharing on computer.

Hope it helps someone.

I encountered this problem when I had started the emulator while I was logged on to a VPN. Logging off the VPN had no effect until I quit the emulator and restarted. It is easy to test if your emulator is not resolving names correctly - just go to the emulator browser and type in a website hostname.

  • Got to Device manager
  • select emulator
  • click Cold Boot now
  • run selected emulator

Please try rebooting the emulator.

Related