許可されたソースの画像をフェッチする必要があるアプリでユニバーサル画像ローダーを使用しています。
これまで、URLConnectionImageDownloaderクラスを独自のクラスで拡張し、メソッドgetStreamFromNetworkを、URLConnectionオブジェクトの承認ヘッダーを次のように設定する独自の実装でオーバーライドしました。
public class authURLConnectionImageDownloader extends URLConnectionImageDownloader {
@Override
public InputStream getStreamFromNetwork(URI imageUri) throws IOException {
String auth = Base64.encodeToString(("username" + ":"+"psswd").getBytes(), Base64.NO_WRAP);
URLConnection conn = imageUri.toURL().openConnection();
conn.setRequestProperty("Authorization", "Basic " + auth);
conn.setConnectTimeout(DEFAULT_HTTP_CONNECT_TIMEOUT);
conn.setReadTimeout(DEFAULT_HTTP_READ_TIMEOUT);
return new FlushedInputStream(new BufferedInputStream(conn.getInputStream(), BUFFER_SIZE));
}
そして私のImageLoaderを設定するために...
imageLoader = ImageLoader.getInstance();
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(MainActivity.this)
.imageDownloader(new authURLConnectionImageDownloader())
.build();
imageLoader.init(config);
これまでのところ、私はそれを機能させることができませんでした。画像はダウンロードされません。しかし、もっと重要なことに、getStreamFromNetwork()にブレークポイントを設定しましたが、ヒットすることはありませんか?私は何が間違っているのですか?