这是将Twitter集成到android中的正确方式吗?有人能告诉我如何获得个人资料图片的URL吗



我正在尝试从Twitter获取个人资料图片,我不知道我需要调用什么方法来获取授权该应用程序的人的个人资料图片的url,这是我的代码:
MainActivity.class

public class MainActivity extends AppCompatActivity {
private static final String TWITTER_KEY = "TWITTER_KEY";
private static final String TWITTER_SECRET = "TWITTER_SECRET";
private TwitterLoginButton loginButton;
private long TwitterID;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
Fabric.with(this, new Twitter(authConfig));
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
loginButton = (TwitterLoginButton) findViewById(R.id.twitter_login_button);
loginButton.setCallback(new Callback<TwitterSession>() {
@Override
public void success(Result<TwitterSession> result) {Twitter.getInstance().core.getSessionManager().getActiveSession()
TwitterSession session = result.data;
TwitterID = session.getId();
String msg = "@" + session.getUserName() + " logged in! (#" + session.getUserId() + ")" + "nid = " + TwitterID;
Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_LONG).show();
}
@Override
public void failure(TwitterException exception) {
Toast.makeText(getApplicationContext(), "Keep it up rest is piece of Cake", Toast.LENGTH_LONG).show();
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
loginButton.onActivityResult(requestCode, resultCode, data);
}
}

应该添加什么代码才能获得配置文件图像Url?此外,请告诉我,如果这是添加推特登录的正确方法。

关于实现,我不能说任何最后的话,显然它很好,但这实际上取决于您的需求和应用程序运行环境。如果你正确地遵循了文档,并且它在具有不同帐户的少数设备上运行良好,那么它肯定是好的。

对于个人资料图片,如文件所示:

您可以从GET users/show获取用户最新的个人资料图像,以及在Twitter上构成其身份的其他组件。在用户对象中,您将找到profile_image_url和profile_iimage_url_https字段。这些字段将包含用户上传图像的调整大小的"正常"变体。这个"正常"变体通常是48px乘48px。

我相信这是获取用户详细信息的正确方法。但是,如果你不想获取用户详细信息并保持简单,你可以使用更简单的方法来获取个人资料图片。(我不能保证推特会支持多久,但是的,它还很完美:)

https://twitter.com/[用户名]/profile_image?size=原始

其中username是用户的Twitter用户名,您可以通过在success方法com.twitter.sdk.android.core.Callback<TwitterSession>中调用session.getUserName()来获得

最新更新