Unable to resolve host "<insert URL here>" No address associated with hostname

AndroidAndroid AsynctaskAndroid 3.0-HoneycombUrlconnection

Android Problem Overview


I tried following this tutorial: [Getting Data from the Web][1]

I tried implementing it on Android 3.0, the latest platform for tablets, however, I get this error: "Unable to resolve host "www.anddev.org" No address associated with hostname."

You can checkout the URL that I used just to prove that the file exists. http://www.anddev.org/images/tut/basic/getdatafromtheweb/loadme.txt

I created a private class and extended it with asynctask. Here is the code:

    private class Downloader extends AsyncTask<String,Void,String>{
	String myString = null;
	@Override
	protected String doInBackground(String... arg0) {
		try{
			URL myURL = new URL("http://www.anddev.org/images/tut/basic/getdatafromtheweb/loadme.txt");
			URLConnection ucon = myURL.openConnection();
			InputStream is = ucon.getInputStream();
			BufferedInputStream bis = new BufferedInputStream(is);
			
			ByteArrayBuffer baf = new ByteArrayBuffer(50);
			int current = 0;
			while((current=bis.read())!=-1){
				baf.append((byte)current);
			}
			myString = new String (baf.toByteArray());
		}catch(Exception e){
			myString = e.getMessage();
		}
		return myString;
	}
@Override
protected void onPostExecute(String result){
	tv.setText(result);
}
}

Any help out there would be appreciated. [1]: http://www.anddev.org/novice-tutorials-f8/getting-data-from-the-web-urlconnection-via-http-t351.html

Android Solutions


Solution 1 - Android

My bet is that you forgot to give your app the permission to use the internet. Try adding this to your android manifest:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Solution 2 - Android

Please, check if you have valid internet connection.

Solution 3 - Android

May you have taken permission

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

BUT

You may have forgot to TURN ON Internet in Mobile or Whatever Device.

Solution 4 - Android

Are you able to reach that url from within the built-in browser?

If not, it means that your network setup is not correct. If you are in the emulator, you may have a look at the networking section of the docs.

If you are on OS/X, the emulator is using "the first" interface, en0 even if you are on wireless (en1), as en0 without a cable is still marked as up. You can issue ifconfig en0 down and restart the emulator. I think I have read about similar behavior on Windows.

If you are on Wifi/3G, call your network provider for the correct DNS settings.

Solution 5 - Android

if you have USB internet like me the emulator seems to dislike connection being turned on and off so you may need to restart the emulator

Solution 6 - Android

This error because of you host cann't be translate to IP addresses via DNS.

> Solve of this problem :

1- Make sure you connect to the internet (check quality of network).

2- Make sure you take proper permission to access network

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

Solution 7 - Android

I got the same error and for the issue was that I was on VPN and I didn't realize that. After disconnecting the VPN and reconnecting the wifi resolved it.

Solution 8 - Android

Also, make sure that your device isn't on airplane mode and/or that data usage is enabled.

Solution 9 - Android

I had the same issue with the Android 10 emulator and I was able to solve the problem by following the steps below:

  1. Go to Settings → Network & internet → Advanced → Private DNS
  2. Select Private DNS provider hostname
  3. Enter: dns.google
  4. Click Save

With this setup, you URL should work as expected.

Solution 10 - Android

If you see this intermittently on wifi or LAN, but your mobile internet connection seems ok, it is most likely your ISP's cheap gateway router is experiencing high traffic load.

You should trap these errors and display a reminder to the user to close any other apps using the network.

Test by running a couple of HD youtube videos on your desktop to reproduce, or just go to a busy Starbucks.

Solution 11 - Android

Restarting the emulator works in some scenario.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Question황현정View Question on Stackoverflow
Solution 1 - AndroidleechView Answer on Stackoverflow
Solution 2 - AndroidVladimir IvanovView Answer on Stackoverflow
Solution 3 - AndroidPratik ButaniView Answer on Stackoverflow
Solution 4 - AndroidHeiko RuppView Answer on Stackoverflow
Solution 5 - AndroidIanView Answer on Stackoverflow
Solution 6 - AndroidMina FawzyView Answer on Stackoverflow
Solution 7 - AndroidadubeyView Answer on Stackoverflow
Solution 8 - AndroidDave JustenView Answer on Stackoverflow
Solution 9 - AndroidReyAndReyView Answer on Stackoverflow
Solution 10 - AndroidDominic CerisanoView Answer on Stackoverflow
Solution 11 - AndroidRamdhasView Answer on Stackoverflow