Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jsoup unknown host exception

Tags:

android

jsoup

Here's the code I've been working on for 3 days. I'm not able to find out why it throws:

java.net.UnknownHostException:
Unable to resolve host "www.google.co.in": No address associated with hostname

Below is the MainActivity class:

package com.example.yo;

import java.io.IOException;
import java.net.*;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import android.annotation.SuppressLint;
import android.annotation.TargetApi;
import android.app.Activity;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

@TargetApi(Build.VERSION_CODES.GINGERBREAD)
public class MainActivity extends Activity {

    Document doc;
    TextView tv;
    String res = "";

    String BLOG_URL = "https://www.google.co.in/";

    @Override
    public void onCreate(Bundle savedInstanceState) {
        // set layout view
        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        new jsoupexample().execute(BLOG_URL);
    }

    @TargetApi(Build.VERSION_CODES.GINGERBREAD)
    public class jsoupexample extends AsyncTask<String, Void, String> {
        @Override
        protected String doInBackground(String... arg0) {
            // TODO Auto-generated method stub
            try {
                doc = Jsoup.connect(BLOG_URL).userAgent("Mozilla/5.0").timeout(20000).get();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }

            Elements links = doc.select("a[href]");

            for (Element element : links) {
                res = element.attr("href");
            }
            return res;
        }
    }

    protected void onPostExecute(String result) {
        if (result != null && !result.isEmpty()) {
            tv.setText(result);
        } else {
            tv.setText("no value returned");
        }
    }
}

Here's the logcat:

04-14 00:23:32.800: W/System.err(26397): java.net.UnknownHostException: Unable to resolve host "www.google.co.in": No address associated with hostname
04-14 00:23:32.810: W/System.err(26397):    at java.net.InetAddress.lookupHostByName(InetAddress.java:394)
04-14 00:23:32.810: W/System.err(26397):    at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
04-14 00:23:32.820: W/System.err(26397):    at java.net.InetAddress.getAllByName(InetAddress.java:214)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:316)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpsURLConnectionImpl$HttpsEngine.makeSslConnection(HttpsURLConnectionImpl.java:461)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpsURLConnectionImpl$HttpsEngine.connect(HttpsURLConnectionImpl.java:442)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:290)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:240)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:81)
04-14 00:23:32.820: W/System.err(26397):    at libcore.net.http.HttpsURLConnectionImpl.connect(HttpsURLConnectionImpl.java:165)
04-14 00:23:32.830: W/System.err(26397):    at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:425)
04-14 00:23:32.830: W/System.err(26397):    at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:410)
04-14 00:23:32.830: W/System.err(26397):    at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:164)
04-14 00:23:32.830: W/System.err(26397):    at org.jsoup.helper.HttpConnection.get(HttpConnection.java:153)
04-14 00:23:32.830: W/System.err(26397):    at com.example.yo.MainActivity$jsoupexample.doInBackground(MainActivity.java:50)
04-14 00:23:32.830: W/System.err(26397):    at com.example.yo.MainActivity$jsoupexample.doInBackground(MainActivity.java:1)
04-14 00:23:32.830: W/System.err(26397):    at android.os.AsyncTask$2.call(AsyncTask.java:287)
04-14 00:23:32.830: W/System.err(26397):    at java.util.concurrent.FutureTask.run(FutureTask.java:234)
04-14 00:23:32.830: W/System.err(26397):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
04-14 00:23:32.830: W/System.err(26397):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
04-14 00:23:32.830: W/System.err(26397):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
04-14 00:23:32.830: W/System.err(26397):    at java.lang.Thread.run(Thread.java:856)
04-14 00:23:48.490: W/dalvikvm(26397): threadid=11: thread exiting with uncaught exception (group=0x41767930)
04-14 00:23:48.510: E/AndroidRuntime(26397): FATAL EXCEPTION: AsyncTask #1
04-14 00:23:48.510: E/AndroidRuntime(26397): java.lang.RuntimeException: An error occured while executing doInBackground()
04-14 00:23:48.510: E/AndroidRuntime(26397):    at android.os.AsyncTask$3.done(AsyncTask.java:299)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:352)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at java.util.concurrent.FutureTask.setException(FutureTask.java:219)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at java.util.concurrent.FutureTask.run(FutureTask.java:239)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at java.lang.Thread.run(Thread.java:856)
04-14 00:23:48.510: E/AndroidRuntime(26397): Caused by: java.lang.NullPointerException
04-14 00:23:48.510: E/AndroidRuntime(26397):    at com.example.yo.MainActivity$jsoupexample.doInBackground(MainActivity.java:57)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at com.example.yo.MainActivity$jsoupexample.doInBackground(MainActivity.java:1)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at android.os.AsyncTask$2.call(AsyncTask.java:287)
04-14 00:23:48.510: E/AndroidRuntime(26397):    at java.util.concurrent.FutureTask.run(FutureTask.java:234)
04-14 00:23:48.510: E/AndroidRuntime(26397):    ... 4 more
like image 267
Gunjit Dhawan Avatar asked Aug 24 '26 08:08

Gunjit Dhawan


1 Answers

The exception java.net.UnknownHostException: Unable to resolve host happens because your app is not able to connect to the specified host.

On possible cause is that your internet connection is actually down. You can test that with the ping command.

Another common cause is the lack of permission to access the internet in your Android manifest file AndroidManifest.xml.

If you haven't already added that permission, add the line below to your AndroidManifest.xml file, just after the <manifest> tag and before the <application> tag:

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

For more info on Android internet permission syntax, and other AndroidManifest permission examples, check android.com's samples: http://developer.android.com/tools/samples/index.html.

like image 103
acdcjunior Avatar answered Aug 26 '26 21:08

acdcjunior