0

I'm using ImageLoader to load images from internet. But I got error message "E ImageLoader: connect timed out", the trace is:

05-29 16:39:02.994 9988 10417 E ImageLoader: connect timed out 05-29 16:39:02.994 9988 10417 E ImageLoader: java.net.SocketTimeoutException: connect timed out 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.net.PlainSocketImpl.socketConnect(Native Method) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:334) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:196) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:178) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:356) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.net.Socket.connect(Socket.java:605) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.Platform.connectSocket(Platform.java:113) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.Connection.connectSocket(Connection.java:196) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.Connection.connect(Connection.java:172) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.Connection.connectAndSetOwner(Connection.java:367) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.OkHttpClient$1.connectAndSetOwner(OkHttpClient.java:130) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:330) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:247) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:480) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:428) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:544) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStreamFromNetwork(BaseImageDownloader.java:117) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStream(BaseImageDownloader.java:88) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.nostra13.universalimageloader.core.decode.BaseImageDecoder.getImageStream(BaseImageDecoder.java:98) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.nostra13.universalimageloader.core.decode.BaseImageDecoder.decode(BaseImageDecoder.java:74) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.decodeImage(LoadAndDisplayImageTask.java:265) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.tryLoadBitmap(LoadAndDisplayImageTask.java:238) 05-29 16:39:02.994 9988 10417 E ImageLoader: at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.run(LoadAndDisplayImageTask.java:136) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 05-29 16:39:02.994 9988 10417 E ImageLoader: at java.lang.Thread.run(Thread.java:761) 05-29 16:39:02.995 9988 9988 D TweetAdapter: onLoadingFailed, uri is https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg, failReason IO_ERROR

Here are my code:

private DisplayImageOptions mOptions;
mOptions = new DisplayImageOptions.Builder()
            .showImageForEmptyUri(R.mipmap.ic_launcher)
            .showImageOnFail(R.mipmap.ic_launcher)
            .cacheInMemory(true)
            .cacheOnDisk(true)
            .build();
mConfig = new ImageLoaderConfiguration.Builder(context)
            .defaultDisplayImageOptions(mOptions)
            .discCacheSize(50 * 1024 * 1024)
            .discCacheFileCount(100)
            .writeDebugLogs().build();
ImageLoader.getInstance().init(mConfig);

The definition of ViewHolder is :

private static class ViewHolder {
    ImageView imageButtonSender;
    TextView textViewSenderUserName;
    TextView textViewSenderContent;
    FrameLayout frameLayoutImages;
    LinearLayout linearLayoutCommentContent;
}

in the function "getView" of my adapter, I call this function:

ImageLoader.getInstance().loadImage("https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcQW0S4wK02z4QilNvGE9YFtoJDJtbTsoZavc3INxbD9ZvdRgfxy",
             new ImageLoadingListener() {
                @Override
                public void onLoadingStarted(String imageUri, View view) {

                }

                @Override
                public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
                    Log.d(TAG, "onLoadingFailed, uri is " + imageUri + ", failReason " + failReason.getType());
                }

                @Override
                public void onLoadingComplete(String imageUri, View view, Bitmap loadedImage) {
                    Log.d(TAG, "onLoadingComplete imageUri " + imageUri);
                    holder.imageButtonSender.setImageBitmap(loadedImage);
                }

                @Override
                public void onLoadingCancelled(String imageUri, View view) {

                }
            });

I've tried another URL,such as "https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg", but the same error happens again.

Who can help me ?

Leon
  • 31
  • 8
  • Have you checked if the internet connection is working in the device you are testing?or are you using a emulator? Have you added necessary permissions in manifest file for Android to allow you application to connect with internet? – Deshan Nov 15 '17 at 15:00
  • Yes, the network works properly, I was using a real device, and another bitmap has been downloaded successfully by using AsyncTask. I've added INTERNET permission in manifest. – Leon Nov 15 '17 at 15:26
  • I've found the reason. My cellphone can't access to these two URLs which need international internet permission, but my computer can do. Thank you @Deshan – Leon Nov 16 '17 at 02:24
  • Glad to hear!.Btw please add your solution as an answer, someone else having the same issue might find it useful. – Deshan Nov 16 '17 at 05:15

1 Answers1

1

Solution: My cellphone can't access to these two URLs which need international internet permission, but my computer can do

Leon
  • 31
  • 8