jtwitter库:连接到替代服务失败

时间:2012-04-08 20:53:52

标签: android multithreading twitter

  

修改

     

omg我显然应该休息一下... logcat给出了这些错误和as   似乎catch块也被执行但消息是   实际发送,因为我已通过访问该页面验证:   http://yamba.marakana.com/

     

实际上,我花了2个小时才意识到......可以有人   请告诉我为什么应用程序仍然想连接到Twitter?

我正在关注MarakanaTechTV的教程:https://www.youtube.com/watch?v=-P1eiRy-klk&feature=relmfu

这是关于构建类似Twitter的客户端,但为了简单起见(避免使用OAuth),它使用自己位于此处的服务:http://yamba.marakana.com/用户名是学生,密码是密码。

这是我的代码:

    public void onClick(View v) {
    final String statusText = editStatus.getText().toString();

    //zeitkritische Aufgaben wie z.b. networking oder DB Zugriff dürfen nicht im main-thread laufen
    //App crashed sonst
    new Thread() {
        public void run() {
            try {                   
                Twitter twitter = new Twitter("student", "password");
                twitter.setAPIRootUrl("http://yamba.marakana.com/api");
                twitter.setStatus(statusText);
            } catch (Exception e) {
                Log.e("error", "DIED", e);
                //e.printStackTrace(e);

            }
        }
    }.start();

    Log.d("StatusActivity", "onClicked! with text: " + statusText);
}
}

这就是logcat给我的东西:

  

04-08 20:48:14.329:D / gralloc_goldfish(1935):未检测到GPU仿真的仿真器。   04-08 20:48:17.019:D / StatusActivity(1935):onClicked!带文字:ggfdg   04-08 20:48:23.308:D / StatusActivity(1935):onClicked!带文字:ggfdg   04-08 20:48:24.438:E /错误(1935):DIED   04-08 20:48:24.438:E / error(1935):winterwell.jtwitter.TwitterException $ E401:未经授权http://twitter.com/account/rate_limit_status.json(学生)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.URLConnectionHttpClient.processError(URLConnectionHttpClient.java:125)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.URLConnectionHttpClient.getPage(URLConnectionHttpClient.java:91)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.URLConnectionHttpClient.processError(URLConnectionHttpClient.java:143)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.URLConnectionHttpClient.post(URLConnectionHttpClient.java:219)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.Twitter.post(Twitter.java:1944)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.Twitter.updateStatus(Twitter.java:2555)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.Twitter.updateStatus(Twitter.java:2502)   04-08 20:48:24.438:E / error(1935):at winterwell.jtwitter.Twitter.setStatus(Twitter.java:2274)   04-08 20:48:24.438:E / error(1935):at com.example.yamba.StatusActivity $ 1.run(StatusActivity.java:34)

似乎该应用尝试连接到Twitter,尽管它应该连接到marakana服务,因为这一行:

twitter.setAPIRootUrl("http://yamba.marakana.com/api");

1 个答案:

答案 0 :(得分:0)

我也面临同样的问题。我的错误是我忘了从catch块中删除Toast的代码