2013-08-27 73 views
1

我试图使用通用图像加载程序,但我有一个奇怪的问题。 我的应用程序无法加载图像。它记录了一个错误,“无法解析主机”baodientu.chinhphu.vn“:没有与主机名关联的地址” 即使我尝试添加另一个示例代码(我从https://github.com/nostra13/Android-Universal-Image-Loader中检查),它仍然没有显示。 但我在浏览器中尝试此网址。它被显示。 我的网址是http://baodientu.chinhphu.vn/uploaded_vgp/dangdinhnam/20130626/nguoi%20lao%20dong.jpg 请帮我找到原因。通用图像加载器不工作

+0

你试过另一个网址吗? – bogdan

+0

是的,我已经尝试过,但仍然没有运气:( – sijeesh

回答

0

这不是ImageLoader的问题..它与您的服务器端存在问题。

有服务器停机或主机名可能是错误的,或者你不能给互联网访问它的权限..

因此,尝试允许添加到您的清单文件:

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

Voila!工作!!! THANKs的帮助!! :) :) – sijeesh

0

如果您的权限是正确的,请检查您的设备中的网络,如果它的工作可能取决于您使用的连接api(URLConnection || HttpURLConnection)。尝试使用下面的代码

InputStream stream = null; 
    try { 
     URLConnection conn = new URL(url).openConnection(); 

     if (conn instanceof HttpURLConnection){ 
      try { 
       HttpURLConnection httpConn = (HttpURLConnection) conn; 
       httpConn.setAllowUserInteraction(false); 
       httpConn.setInstanceFollowRedirects(true); 
       httpConn.setRequestMethod("GET"); 
       httpConn.connect(); 

       response = httpConn.getResponseCode(); 
       if (response == HttpURLConnection.HTTP_OK) { 
        stream = httpConn.getInputStream(); 
       } 
      } catch (Exception ex) { 
       throw new IOException("Unable to create InputStream for image Url:"); 
      } 
     }else{ 
      conn.setDoInput(true); 
      conn.setDoOutput(true); 
      conn.connect(); 
      stream = conn.getInputStream(); 
     } 
     if (stream == null) { 
      Log.e(getClass().getName(), "Unable to create InputStream for image Url:" + url); 
     } 
0

添加这两种权限清单档案中的

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

可以将此代码加载图像

URL url = new URL("http://image10.bizrate-images.com/resize?sq=60&uid=2216744464"); 
Bitmap bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream()); 
imageView.setImageBitmap(bmp); 

您也可以参考此链接

www.androidhive.info/2012/07/android-loading-image-from-url-http/

+0

我发布我的权限,我已经在下面设置:'<使用权限android:name =“android.permission.INTERNET”/> <使用权限android:name =“android.permission.READ_EXTERNAL_STORAGE”/>' – sijeesh

0

添加导入到AndroidManifest.xml中

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

添加到您的代码中。

ImageLoader imgLoader = ImageLoader.getInstance(); 
imgLoader.init(ImageLoaderConfiguration.createDefault(getApplicationContext())); 
imgLoader.displayImage(YourImageURL.toString(), YourImageView); 
相关问题