編集
omg明らかに休憩を取る必要があります... logcatはこれらのエラーを返し、catch-blockも実行されているようですが、ページにアクセスして確認したように、メッセージは実際に送信されます: 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): 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): winterwell.jtwitter.URLConnectionHttpClient.post(URLConnectionHttpClient.java:219) 04-08 20:48:24.438: E/error(1935): winterwell.jtwitter.Twitter. post(Twitter.java:1944) 04-08 20:48:24.438: E/error(1935): winterwell.jtwitter.Twitter.updateStatus(Twitter.java:2555) 04-08 20:48:24.438: E/ error(1935): winterwell.jtwitter.Twitter.updateStatus(Twitter.java:2502) 04-08 20:48:24.438: E/error(1935):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 に接続しようとしているようです:
twitter.setAPIRootUrl("http://yamba.marakana.com/api");