Android4上带有回调URL的Twitter4j getOAuthRequestToken()失败了吗?

时间:2012-09-03 17:13:13

标签: android authentication twitter twitter4j

我正在尝试将Twitter集成到我的Android应用程序中,似乎无法让Twitter4j注册我的应用程序。

关于我在Android上看到过的问题的每个教程和问题已经存在多年了,从那以后事情似乎已经发生了变化。

我按照this tutorial上的步骤操作,并使用提供的源代码测试连接到Twitter。知道随源代码提供的Twitter4j版本已经过时了,我后来更新了最新版本和快照版本,但都无济于事。

private void loginNewUser() {
    try {
        Log.i(TAG, "Request App Authentication");

        // This line fails with error "Host is unresolved: api.twitter.com:80
        mReqToken = mTwitter.getOAuthRequestToken(); 

        Log.i(TAG, "Starting Webview to login to twitter");
        WebView twitterSite = new WebView(this);
        twitterSite.loadUrl(mReqToken.getAuthenticationURL());
        setContentView(twitterSite);

    } catch (TwitterException e) {
        Log.e("errors", e.getMessage());
        Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG).show();
    }
}

任何人都有使用Twitter4j的任何工作登录代码或知道问题的解决方案我将不胜感激收到你的消息!

2 个答案:

答案 0 :(得分:8)

好的,我想通了,我希望遇到同样问题的人不必像我一样受苦。

1)错误“主机未解决:api.twitter.com:80”来自于设备没有WiFi信号或3G连接(在我工作的办公室中WiFi有点不稳定)

2)getOAuthRequestToken()在任何大于3.0 Honeycomb的Android版本中崩溃,因为HTTP请求需要在来自UI线程的单独线程上完成。我遇到了这个问题,因为我已将Android清单中的目标版本设置为4.0 Ice Cream Sandwich。

答案 1 :(得分:0)

我也有这个问题,我无法登录Twitter的原因是我修改了我的设备进行测试的时间和日期。

一旦我输入了正确的日期和时间,就可以登录Twitter了。

希望它可以帮助任何人。