我是一个新的Android开发人员,我正在开发一个显示来自网址地址的图像的应用程序。它在wifi中工作正常,但在3g中不起作用。这是代码:
private void downloadImage(String urlPar, boolean imageSuivant) {
try {
URL urlImage = new URL(urlPar);
HttpURLConnection connection = (HttpURLConnection) urlImage.openConnection();
InputStream inputStream = connection.getInputStream();
bitmap = BitmapFactory.decodeStream(inputStream);
image.setImageBitmap(bitmap);
connection.disconnect();
inputStream.close();
} catch (MalformedURLException e) {
if(imageSuivant==true)
imageSuivante();
else
imagePrecedente();
e.printStackTrace();
} catch (IOException e) {
if(imageSuivant==true)
imageSuivante();
else
imagePrecedente();
e.printStackTrace();
}
}
你能用html浏览器打开图像吗?如果不是,则无法从互联网访问图像URL,而只能从WLAN内联网访问。(即无法从互联网 (3G) 访问 http://192.168.117.18/myImage.jpg
有几次我发现我的电话接线员不允许访问某些类型的文件。例如,我不可能在 3G 中从网络上获取存档文件 (.zip),但它在 Wifi 中运行良好。也许你的问题很相似。检查您的图像文件类型并尝试使用其他类型的文件。
试试
conn.setDoOutput(true);
connection.setAllowUserInteraction(true);
希望这会有所帮助