jestem coraz Twitter poświadczeń z Androidem AccountManager stosując następujący kod:Korzystanie Android AccountManager Twitter poświadczenia stworzyć Twitter4J AccessToken
AccountManager am = AccountManager.get(this);
Account account = am.getAccountsByType("com.twitter.android.auth.login")[0];
am.invalidateAuthToken("com.twitter.android.auth.login", null);
am.getAuthToken(account, "com.twitter.android.oauth.token", null, this, createCallback(TOKEN), null);
am.getAuthToken(account, "com.twitter.android.oauth.token.secret", null, this, createCallback(TOKEN_SECRET), null);
Używam wartości zwracane z callbacków Aby skonfigurować obiekt Twitter4J Twitter:
Twitter twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET);
twitter.setOAuthAccessToken(new AccessToken(token, tokenSecret));
User user = twitter.verifyCredentials();
Ale to generuje następujący wyjątek podczas wywoływania verifyCredentials():
Exception connecting to twitter
Received authentication challenge is null
Relevant discussions can be found on the Internet at:
http://www.google.co.jp/search?q=6f0f59ca or
http://www.google.co.jp/search?q=200bae40
TwitterException{exceptionCode=[6f0f59ca-200bae40 1de2170b-e16a1586], statusCode=-1, message=null, code=-1, retryAfter=-1, rateLimitStatus=null, version=3.0.2}
at twitter4j.internal.http.HttpClientImpl.request(HttpClientImpl.java:192)
at twitter4j.internal.http.HttpClientWrapper.request(HttpClientWrapper.java:61)
at twitter4j.internal.http.HttpClientWrapper.get(HttpClientWrapper.java:89)
at twitter4j.TwitterBaseImpl.fillInIDAndScreenName(TwitterBaseImpl.java:126)
at twitter4j.TwitterImpl.verifyCredentials(TwitterImpl.java:578)
Próbowałem wywoływać invalidatorAuthToken na AccountManager przed zażądaniem tokenów, ale to nie miało żadnego znaczenia.
Mogę pomyślnie wywoływać verifyCredentials podczas ustawiania wartości tokena i tokenSecret na te dostarczone przez Twitter dla mojej aplikacji, ale muszę mieć możliwość korzystania z aktualnych danych uwierzytelniających użytkowników urządzenia twitter.
Czy są inne kroki wymagane do użycia tokenu i tajnych wartości tokena zwróconych z AccountManager do skonfigurowania AccessToken?
To zostało przetestowane na HTC Evo z systemem Android 2.3.5.
Jedna uwaga: Nie sądzę, że 'invalidateAuthToken' działa bez przekazywania bieżącego łańcucha znaków. – devnate
Mam również ten sam problem! Nie mam pojęcia jak go rozwiązać –