Java 检索位图时出现未知主机异常?
我正在使用此代码从web获取位图Java 检索位图时出现未知主机异常?,java,android,Java,Android,我正在使用此代码从web获取位图 try { Bitmap bitmap=null; URL imageUrl = new URL(url); HttpURLConnection conn = (HttpURLConnection)imageUrl.openConnection(); conn.setConnectTimeout(30000); conn.setReadTimeout(30000);
try {
Bitmap bitmap=null;
URL imageUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection)imageUrl.openConnection();
conn.setConnectTimeout(30000);
conn.setReadTimeout(30000);
InputStream is=conn.getInputStream(); ///Error is pointing me here
OutputStream os = new FileOutputStream(f);
Utils.CopyStream(is, os);
os.close();
bitmap = decodeFile(f);
return bitmap;
} catch (Exception ex){
ex.printStackTrace();
return null;
}
唯一的问题是我一直犯这个错误。每次我都尝试获取位图。
错误指向我这里:
InputStream is=conn.getInputStream();
09-30 06:54:32.512: WARN/System.err(11149): at java.net.InetAddress.lookupHostByName(InetAddress.java:497)
09-30 06:54:32.512: WARN/System.err(11149): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:294)
09-30 06:54:32.512: WARN/System.err(11149): at java.net.InetAddress.getAllByName(InetAddress.java:256)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:69)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:48)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection$Address.connect(HttpConnection.java:322)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:89)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHttpConnection(HttpURLConnectionImpl.java:285)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.makeConnection(HttpURLConnectionImpl.java:267)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.retrieveResponse(HttpURLConnectionImpl.java:1018)
09-30 06:54:32.512: WARN/System.err(11149): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:512)
InputStream is=conn.getInputStream();
09-30 06:54:32.512:WARN/System.err(11149):位于java.net.InetAddress.lookupHostByName(InetAddress.java:497)
09-30 06:54:32.512:WARN/System.err(11149):位于java.net.InetAddress.getAllByNameImpl(InetAddress.java:294)
09-30 06:54:32.512:WARN/System.err(11149):位于java.net.InetAddress.getAllByName(InetAddress.java:256)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.(HttpConnection.java:69)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.(HttpConnection.java:48)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection$Address.connect(HttpConnection.java:322)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:89)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHttpConnection(HttpURLConnectionImpl.java:285)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.makeConnection(HttpURLConnectionImpl.java:267)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.retrieverresponse(HttpURLConnectionImpl.java:1018)
09-30 06:54:32.512:WARN/System.err(11149):位于org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:512)
显然,您的url
地址无效。将url手动复制到浏览器窗口中,您会看到相同的错误。这是一个网络错误,可能是您没有添加internet权限,或者您的连接网络设置不正确,或者您的url错误…………。检查您的浏览器是否在模拟器中工作……有时您的浏览器会在模拟器中停止工作,从而导致Uknownhostexception…(您应该看到相同的错误)或者:,也许url指向。。。但在emulator上,“localhost”不是emulator主机PC,但正如您所说的地址无效:)