twitter4j を使っている android アプリで、今まで動いていたのに以下のようなエラーが出るようになりました。
W/System.err(23240): http://www.google.co.jp/search?q=bfb606ed or
W/System.err(23240): http://www.google.co.jp/search?q=4ef9707c
W/System.err(23240): TwitterException{exceptionCode=[bfb606ed-4ef9707c], statusCode=403, message=null, code=-1, retryAfter=-1, rateLimitStatus=null, version=3.0.3}
W/System.err(23240): at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:177)
W/System.err(23240): at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
W/System.err(23240): at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:98)
W/System.err(23240): at twitter4j.auth.OAuthAuthorization.getOAuthRequestToken(OAuthAuthorization.java:122)
W/System.err(23240): at twitter4j.auth.OAuthAuthorization.getOAuthRequestToken(OAuthAuthorization.java:104)
W/System.err(23240): at twitter4j.TwitterBaseImpl.getOAuthRequestToken(TwitterBaseImpl.java:281)
W/System.err(23240): at twitter4j.TwitterBaseImpl.getOAuthRequestToken(TwitterBaseImpl.java:273)
twitter4j の jar を最新版の 3.0.5 に差し替えたら動作するようになりました。
急に動かなくなるのは恐いです。。
twitter4j を使った認証で、ある日突然認証ができなくなった。
今までは動いていたのに以下のようなエラーで認証ができない。
特定の端末のみで起こっており、他の端末では問題なく動作する。
Received authentication challenge is null
Relevant discussions can be found on the Internet at:
http://www.google.co.jp/search?q=bfb606ed or
http://www.google.co.jp/search?q=4ef9708b
TwitterException{exceptionCode=[bfb606ed-4ef9708b e2110e48-90349c9b], statusCode=-1, message=null, code=-1, retryAfter=-1, rateLimitStatus=null, version=3.0.3}
at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:192)
at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
at twitter4j.internal.http.HttpClientWrapper.post(HttpClientWrapper.java:98)
at twitter4j.auth.OAuthAuthorization.getOAuthRequestToken(OAuthAuthorization.java:122)
at twitter4j.auth.OAuthAuthorization.getOAuthRequestToken(OAuthAuthorization.java:104)
at twitter4j.TwitterBaseImpl.getOAuthRequestToken(TwitterBaseImpl.java:281)
at twitter4j.TwitterBaseImpl.getOAuthRequestToken(TwitterBaseImpl.java:273)
at android.os.AsyncTask$2.call(AsyncTask.java:185)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
at java.lang.Thread.run(Thread.java:1019)
Caused by: java.io.IOException: Received authentication challenge is null
at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.processAuthHeader(HttpURLConnectionImpl.java:1169)
at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.processResponseHeaders(HttpURLConnectionImpl.java:1111)
at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.retrieveResponse(HttpURLConnectionImpl.java:1064)
at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:735)
at twitter4j.internal.http.HttpResponseImpl.<init>(HttpResponseImpl.java:34)
at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:156)
14 more
少々悩んだ結果、原因は端末の時刻が現在時刻と大きくずれていることでした。
端末の時刻を現在時刻に合わせたところ問題なく動きました。
テストのために時刻を進めていて、元に戻すのを忘れていました。。。
twitter4j に限らず iOS の twitter 認証でも同様に失敗するようです。
前にも一度これでハマったはずなのに、もう一度同じ失敗を繰り返しました。
しかも以前に経験していたことも思い出せなかったので備忘録として書きました。
遅ればせながら2013年夏に発売された Nexus 7 を検証用に購入しました。
ちょっとケチって Wi-Fi 16GB モデルです。
まず最初の印象は物理的に軽いこと。
この大きさでも片手で楽に持てます。
肝心の動作も非常に滑らかに動きます。
OSは現在最新の2.3
画面も綺麗で解像度は 1920x1200 あるそうです。
私がPCで使っているディスプレイ(1920x1080)よりも高い解像度。。。
PCでメディア空き容量を確認したところ11GB台でした。
重いデータをガンガンに入れて使いたい人は32GBモデルにしたほうが良いかもしれません。
充電用アダプタとUSBケーブルは同梱されていました。