我已经Twitter
使用 twitter4j 库集成到了 android 应用程序中,并且在Twitter
.
当用户登录然后流程回到应用程序时,我处理得很好。在这种情况下,我继续进行状态更新。
但是当用户单击cancel
按钮而不是sign in
. 我怎么知道用户点击了cancel
按钮?
我已经Twitter
使用 twitter4j 库集成到了 android 应用程序中,并且在Twitter
.
当用户登录然后流程回到应用程序时,我处理得很好。在这种情况下,我继续进行状态更新。
但是当用户单击cancel
按钮而不是sign in
. 我怎么知道用户点击了cancel
按钮?
我通过查看 Intent 传入回调解决了这个问题。
当用户登录时, Intent 包含一个 parameter oauth_verifier
,而当用户通过单击cancel
按钮拒绝继续时, Intent 包含一个 parameter denied
。
// Handle Twitter call back
private void handleTwitterCallBack() {
Uri uri = getIntent().getData();
// If got redirected from Twitter page to application
if (uri != null
&& uri.toString().startsWith(RS_Twitter.TWITTER_CALLBACK_URL)) {
if (uri.getQueryParameter(RS_Twitter.TWITTER_USER_DENIED) != null) {
// User denied to sign in
} else if (uri
.getQueryParameter(RS_Twitter.TWITTER_OAUTH_VERIFIER_URL) != null) {
// Intent contains Twitter verifier. User authorized the application.
}
}
}