私のアプリには、URL から画像を表示する ImageView があります。
この方法を使用して画像をダウンロードします。
Bitmap bitmap=null;
URL imageUrl = new URL(url);
HttpURLConnection conn = (HttpURLConnection)imageUrl.openConnection();
conn.setConnectTimeout(30000);
conn.setReadTimeout(30000);
conn.setInstanceFollowRedirects(true);
InputStream is=conn.getInputStream();
OutputStream os = new FileOutputStream(f);
Utils.CopyStream(is, os);
os.close();
bitmap = decodeFile(f);
return bitmap;
これは、数字または英字を含む URL でのみ機能し、他の文字 (スペースなど) では機能しません。
適切な URL: http://site.com/images/image.png
悪い URL: http://site.com/images/image 1.png
URLエンコーディング(URLEncoder.encode)を変更しようとしましたが、URL全体が変更されます(スラッシュなどを含む...)。
エンコーディング後にいくつかの文字を置き換える必要がありますか? それとももっと良い方法がありますか?
ありがとう :)