这是我如何使用fabric实现Twitter登录的方法:
Declare twitter key and secret:
private static final String TWITTER_KEY = "r5nPFPbcDrzoJM9bIBCqyfHPK"
private static final String TWITTER_SECRET = "oJ8y2KPIySPpoBX3eCcqgcnmPGXLI94BR4g9ZztnApSmXQG9Ij "
//Twitter Login Button
TwitterLoginButton twitterLoginButton
onCreate() method:
TwitterAuthConfig authConfig = new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET);
Fabric.with(this, new Twitter(authConfig));
setContentView(R.layout.activity_main);
twitterLoginButton = (TwitterLoginButton) findViewById(R.id.twitterLogin);
twitterLoginButton.setCallback(new Callback<TwitterSession>()
@Override
public void failure(TwitterException exception)
});
3.覆盖 onActivityResult() 方法:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
twitterLoginButton.onActivityResult(requestCode, resultCode, data);
}
4.最后,login()函数:
public void login(Result<TwitterSession> result) {
TwitterSession session = result.data;
final String username = session.getUserName();
Twitter.getApiClient(session).getAccountService()
.verifyCredentials(true, false, new Callback<User>() {
@Override
public void failure(TwitterException e) {
}
@Override
public void success(Result<User> userResult) {
User user = userResult.data;
String profileImage = user.profileImageUrl.replace("_normal", "");
Log.d("done","name-->"+username + "url-->"+profileImage);
}
});
}
在login()
中,您可以获得用户名和个人资料图片的URL,并在需要时使用它们。