【发布时间】:2014-11-06 05:39:03
【问题描述】:
我正在尝试使用 twitter 集成在 twitter 上发布推文。我的项目第一次工作正常,同时发布推文和推文已成功发布,但第二次显示在弹出窗口下方。如果我关闭片段然后重新开始,那么它工作正常,但如果我第二次尝试发布推文,它不会关闭它会显示弹出窗口。 Logcat 显示-
https://api.twitter.com/oauth/authorize?oauth_token=xyz
弹幕-
![在此处输入图片描述][1]
问题可能是因为无法访问第二次请求令牌..我使用以下代码访问请求令牌..
protected String doInBackground(String... args) {
try {
if(requestTokenFirstTime) {
requestToken = twitter.getOAuthRequestToken();
requestTokenFirstTime = false;
SharedPreferences.Editor edit = pref.edit();
edit.putString("Request_TOKEN", requestToken.getToken());
edit.putString("Request_TOKEN_SECRET", requestToken.getTokenSecret());
edit.commit();
requestTokenFirstTime = false;
}
else {
requestToken = new RequestToken(pref.getString("Request_TOKEN", ""), pref.getString("Request_TOKEN_SECRET", ""));
}
oauth_url = requestToken.getAuthorizationURL();
} catch (TwitterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return oauth_url;
}
如果我删除 else 部分并尝试每次请求请求令牌,则应用程序崩溃并显示以下错误消息“访问令牌已可用..
我尝试通过放置使 accessToken 无效
twitter.setOAuthAccessToken(null);
twitter.setOAuth2Token(null);
在 onPostExecute() 内部,但这也没有用..
【问题讨论】:
标签: android twitter oauth twitter4j