3

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

我看到的关于 Android 问题的每个教程和问题都已有多年历史,从那时起事情似乎已经发生了变化。

我按照本教程中的步骤操作并使用提供的源代码来测试连接到 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 的有效登录代码或知道问题的解决方案,我将不胜感激收到您的来信!

4

2 回答 2

8

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

1) 错误“Host is unresolved: api.twitter.com:80”来自设备没有 WiFi 信号或 3G 连接(我工作的办公室 WiFi 有点不稳定)。

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

于 2012-09-04T09:18:02.887 回答
0

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

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

希望它可以帮助任何人。

于 2014-10-30T10:16:19.770 回答