2013-12-05 1 views
0

android 2.3에서 실행할 때 아래 코드 스 니펫 (https://accounts.google.com/o/oauth2/tokeninfo?access_token=을 통해 검증 됨)이 유효하지 않습니다.android 2.3에서 실행될 때 AccountManager가 잘못된 auth_token을 반환합니다.

AccountManager 올바른 방법은 계정 설정을 수동으로 거쳐 기존 Google 계정을 추가하는 것입니다. 재실행 할 때 토큰은 유효하지 않을 때까지 유효합니다. 동일한 문제가 다시 나타납니다. Android 4.0 이상이 설치된 기기에서는 문제가 발생하지 않습니다.

이 문제를 해결할 수 있습니까?

private static final String   SCOPE = "oauth2:https://www.googleapis.com/auth/userinfo.email"; 

accountManager.getAuthToken(googleAccountsMap.get(accountName), SCOPE, null, getActivity(), 
        new OnAuthTokenAcquired(), null); 


private class OnAuthTokenAcquired implements AccountManagerCallback<Bundle> { 

    @Override 
    public void run(AccountManagerFuture<Bundle> result) { 
     try { 
      Bundle bundle = result.getResult(); 
      String accountName = bundle.getString(AccountManager.KEY_ACCOUNT_NAME); 
      String authToken = bundle.getString(AccountManager.KEY_AUTHTOKEN); 
+0

에 대해 설명합니다. – AndroidHacker

+0

그래,이 문제는 일시적으로 만 해결 될 가능성이 높습니다. 재부팅은 최종 사용자가 다른 선택을하지 않는 한 후퇴하는 옵션이 아닙니다. – quirkfly

답변