VolleyのNetworkImageView
を使用して、基本HTTP認証が必要なREST APIから画像をロードしたいとします。だから私はHTTPリクエストにヘッダを追加する必要があります。 - this questionで説明したようにAndroid Volley ImageLoader - 基本的なHTTP認証の使い方
オーバーライドRequest.getHeaders()
:
私は、次のアプローチを作ってきました。 これは問題ありませんが、ImageLoader
にはnew ImageRequest()
がハードコードされていますので、私はRequest
の実装をImageLoader
に渡すことはできません。簡単に継承したり調整したりすることはできません。
解決策は、Volleyライブラリ自体を修正することです(避けたいもの)。
カスタムHttpClientStackを - hereと記述してください。 この方法を使用すると、私はHTTPコミュニケーションを傍受し、必要なヘッダーを追加することができます。しかし、これは正しい方法ではないと思います。私はVolley(Gingerbread vs. HC and IC)のHttpClientの自動選択を緩くします。
これは私が行方不明になっているいくつかの簡単な方法はありますか?
ご返信ありがとうございます。単純な方法が存在しないことは残念です。 ImageLoaderを変更してカスタムImageRequestクラス(ImageLoaderを作成してImageRequestFactoryに渡す)を使用して、私が提案したようにします。私が正しいとすれば、匿名者は、ImageRequest自体にではなく、ImageRequestに渡されるリスナーだけなので、問題ではありません。 – lopisan
匿名のImageRequestがonGetImageSuccess(cacheKey、response)を呼び出すことがあります。 onResponseで(ImageRequestに直接置いても、リクエストでさえも) – njzk2