我正在尝试获取我的关注者的个人资料图片,以便在 ListView 中用作缩略图。
这些缩略图大约为 125x125,但是 User.getProfileImageURL() 的标准 twitter4j 调用;返回 48x48 的小得多的尺寸,也建议不要用作图像源。
我尝试创建一个 ProfileImage 对象并将其作为参数提供,User.getProfileImageURL(profile image object.Original),
但是这段代码需要一些时间来简单地检索 url,这在加载缩略图列表时效率很低。
关于如何解决这个问题有什么建议吗?
最佳答案
编辑 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 文档有 excellent guidelines了解执行此操作的正确方法。
我们也可以使用 Twitter4j:
mTwitter.getUserProfileImage();
关于Android Twitter获取个人资料图片大小问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14698531/