2

ListView 内でサムネイルとして使用するフォロワーのプロフィール画像を取得しようとしています。

これらのサムネイルは約 125x125 ですが、User.getProfileImageURL(); の標準的な twitter4j 呼び出しです。48x48 のはるかに小さいサイズを返すため、画像ソースとして使用しないこともお勧めします。

私は ProfileImage オブジェクトを作成し、それをパラメーターとして提供しようとしました User.getProfileImageURL(profile image object.Original),

しかし、このコードは単に URL を取得するのに時間がかかるため、サムネイルのリストをロードするときは非効率的です。

これをどうするかについての提案はありますか?

4

3 に答える 3

4

Edit Twitter API v1 が無効になっているため、私の古い回答は無効になりました。認証が必要だと思われる API v1.1 を参照してください。

スクリーン名がわかっている場合、Twitter APIを使用すると、4 つの異なる解像度でプロフィール画像を取得できます。

 https://api.twitter.com/1/users/profile_image?screen_name=Krylez&size=mini
 https://api.twitter.com/1/users/profile_image?screen_name=Krylez&size=normal
 https://api.twitter.com/1/users/profile_image?screen_name=Krylez&size=bigger
 https://api.twitter.com/1/users/profile_image?screen_name=Krylez&size=original

「大きい」画像は 73x73 で、125x125 コンテナーで補間されます。これに問題がある場合は、「元の」写真を取得してみてください。ただし、この写真は非常に大きく (遅く) なる可能性があり、必ずしも正方形であるとは限りません。

どの方法を選択する場合でも、UI スレッドでビットマップをフェッチしたりデコードしたりしないようにしてください。Android API ドキュメントには、これを行う正しい方法に関する優れたガイドラインがあります。

また、以下を使用して Twitter4j を利用することもできます。

mTwitter.getUserProfileImage();

于 2013-02-05T01:26:03.430 に答える
2

getOriginalProfileImageURL()たとえば、使用できます。これはとてつもなく大きいです。小さいものはgetBiggerProfileImageURL()getProfileImageURL()です。

取得する URL は次のとおりです。

http://pbs.twimg.com/profile_images/NUMBER/c62p-cAD_normal.jpeg
http://pbs.twimg.com/profile_images/NUMBER/c62p-cAD_bigger.jpeg
http://pbs.twimg.com/profile_images/NUMBER/c62p-cAD.jpeg
于 2014-11-20T23:52:11.210 に答える