twitter4j を使用してログインし、テキストをツイートしました。今まではすべて正常に動作しています。デバイスからアプリケーションをアンインストールし、アプリケーションを再インストールしましたが、アプリケーションを実行すると、null ポインター例外が発生します。以下はコードです。
prefs = PreferenceManager.getDefaultSharedPreferences(MyActivity.this);
if (TwitterUtils.isAuthenticated(prefs)) {
//ここで null ポインタを取得します
public static boolean isAuthenticated(SharedPreferences prefs) {
String token = prefs.getString(OAuth.OAUTH_TOKEN, "");
String secret = prefs.getString(OAuth.OAUTH_TOKEN_SECRET, "");
AccessToken a = new AccessToken(token,secret);
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(Constants.CONSUMER_KEY, Constants.CONSUMER_SECRET);
twitter.setOAuthAccessToken(a);
try {
twitter.getAccountSettings(); //error at this line
return true;
} catch (TwitterException e) {
return false;
}
}
これがログです
09-06 11:38:48.138: E/AndroidRuntime(868): Caused by: java.lang.NullPointerException
09-06 12:59:49.943: E/AndroidRuntime(929): libcore.net.UriCodec.encode(UriCodec.java:132) で
09-06 11:38:48.138: E/AndroidRuntime(868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.readln(HttpURLConnectionImpl.java:1279)
09-06 11:38:48.138: E/AndroidRuntime(868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl$ChunkedInputStream.readChunkSize(HttpURLConnectionImpl.java:404)
09-06 11:38:48.138: E/AndroidRuntime(868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl$ChunkedInputStream.<init>(HttpURLConnectionImpl.java:340)
09-06 11:38:48.138: E/AndroidRuntime(868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getContentStream(HttpURLConnectionImpl.java:1175)
09-06 11:38:48.138: E/AndroidRuntime(868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.doRequestInternal(HttpURLConnectionImpl.java:1754)
09-06 11:38:48.138: E/AndroidRuntime(868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.doRequest(HttpURLConnectionImpl.java:1649)
09-06 11:38:48.138: E/AndroidRuntime(868): at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:1374)
09-06 11:38:48.138: E/AndroidRuntime(868): at twitter4j.internal.http.HttpResponseImpl.<init>(HttpResponseImpl.java:45)
09-06 11:38:48.138: E/AndroidRuntime(868): at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:178)
09-06 11:38:48.138: E/AndroidRuntime(868): at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:75)
09-06 11:38:48.138: E/AndroidRuntime(868): at twitter4j.internal.http.HttpClientWrapper.get(HttpClientWrapper.java:103)
09-06 11:38:48.138: E/AndroidRuntime(868): at twitter4j.Twitter.getAccountSettings(Twitter.java:1440)
09-06 11:38:48.138: E/AndroidRuntime(868): at com.android.twitter.TwitterUtils.isAuthenticated(TwitterUtils.java:24)
どんな提案でも大歓迎です。事前に感謝します