我正在使用Twitter4j库为Android上的应用程序授权OAuth用户。但是当我尝试获取OAuth请求令牌时,我正面临这种异常。我知道有很多关于这个的主题(Twitter4J + Android: Authentication Challenge is Null Exception喜欢这个),但没有一个能解决我的问题。以下是解释我的问题的简单代码示例;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
prefs = getSharedPreferences("twitterPrefs", MODE_PRIVATE);
twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET);
LoginButton = (Button) findViewById(R.id.login_button);
}
我正在设置消费者密钥和密钥,我得到了良好的Twitter对象,但是当用户点击登录按钮时;
private void loginNewUser() {
try {
currentRequestToken = twitter.getOAuthRequestToken(CALLBACK_URL);
setUpViews();
WebView twitterSite = new WebView(this);
twitterSite.loadUrl(currentRequestToken.getAuthenticationURL());
setContentView(R.layout.authorization_view);
} catch (TwitterException e) {
Toast.makeText(this, "Twitter Login error, try again later", Toast.LENGTH_SHORT).show();
}
}
我得到异常,因为getOAuthRequestToken(CALLBACK_URL)等于null; 收到的身份验证质询为空。
我确信设备上的时间戳是正确的,并且请求令牌的异步任务也不起作用。
任何帮助将不胜感激
答案 0 :(得分:0)
我也偶然发现了这个问题。解决方案很简单:只需将回调网址添加到Twitter应用
即可