编辑
天哪,我显然应该休息一下...... logcat 给出了这些错误,并且似乎也执行了 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/error(1935): DIED 04-08 20:48:24.438: E/error(1935): winterwell.jtwitter.TwitterException$E401: Unauthorized 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):在 winterwell.jtwitter.URLConnectionHttpClient.getPage(URLConnectionHttpClient.java:91) 04-08 20:48:24.438: E/error(1935): 在 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。发布(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/错误(1935):在 winterwell.jtwitter.Twitter.updateStatus(Twitter.java:2502)04-08 20:48:24.438:E/错误(1935):在 winterwell.jtwitter.Twitter.setStatus(Twitter.java:2274) 04-08 20:48:24.438: E/error(1935): 在 com.example.yamba.StatusActivity$1.run(StatusActivity.java:34)
尽管由于这条线,它应该连接到 marakana 服务,但似乎该应用程序试图连接到 twitter:
twitter.setAPIRootUrl("http://yamba.marakana.com/api");