java.lang.NoClassDefFoundError no Android com GoogleAccountCredential.newChooseAccountIntent ()

Estou desenvolvendo para o Android 4+ com o pacote Eclipse Juno ADT + Google Plugin for Eclipse. Eu preciso fazer login programaticamente em uma conta do google para usar a API do Google Agenda. Para isso, estou usando o gerenciador de contas. Estou tendo o erro a seguir:

05-05 13:28:55.605: E/AndroidRuntime(11186): FATAL EXCEPTION: main
05-05 13:28:55.605: E/AndroidRuntime(11186): java.lang.NoClassDefFoundError: com.google.android.gms.common.AccountPicker
05-05 13:28:55.605: E/AndroidRuntime(11186):    at com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential.newChooseAccountIntent(GoogleAccountCredential.java:171)
05-05 13:28:55.605: E/AndroidRuntime(11186): ...

Aqui está o código que causa isso:

GoogleAccountCredential credential;

credential = GoogleAccountCredential.usingOAuth2(this, CalendarScopes.CALENDAR);

chooseAccount();

private void chooseAccount() {

  startActivityForResult(credential.newChooseAccountIntent(), REQUEST_ACCOUNT_PICKER);

}

Eu pesquisei stackoverflow para soluções. O diretório libs contém os arquivos da biblioteca de calendários para o eclipse que eu importei através do google plugin para eclipse (que também coloca lá as bibliotecas de autenticação etc ...):

android-support-v4.jar
google-api-client-1.14.1-beta.jar
google-api-client-android-1.14.1-beta.jar
google-api-services-calendar-v3-rev41-1.14.2-beta.jar
google-http-client-1.14.1-beta.jar
google-http-client-android-1.14.1-beta.jar
google-http-client-gson-1.14.1-beta.jar
google-http-client-jackson-1.14.1-beta.jar
google-http-client-jackson2-1.14.1-beta.jar
google-oauth-client-1.14.1-beta.jar
gson-2.1.jar
jackson-core-2.1.3.jar
jackson-core-asl-1.9.11.jar
jsr305-1.3.9.jar

No entanto, estes não parecem incluir

com.google.android.gms.common.AccountPicker

Se eu importar isso no meu código, a linha de código de importação será marcada como um erro. Então, como vai. Copiei este código do Google Calendar Sample, onde ele funciona bem:

http://samples.google-api-java-client.googlecode.com/hg/calendar-android-sample/

Esse código tem exatamente as mesmas libs, exceto:

calendário lib é rev33 em vez de rev41As bibliotecas jackson e jackson-asl estão faltandoarquivo .properties para cada arquivo de biblioteca presente no código de amostra, mas não no meu código

Então isso não deve ser o problema. No entanto, procurando na seção de importações do código, o código de amostra do Google Agenda possui:

import com.google.android.gms.common.GooglePlayServicesUtil;

mas se eu tentar inserir esta linha de código no meu código, ele será marcado como um erro dizendo que a importação com.google.android.gms.common.GooglePlayServicesUtil não pode ser resolvida.

Esta postagem

java.lang.NoClassDefFoundError: com.google.android.gms.common.AccountPicker

diz que eles foram capazes de

import com.google.android.gms.common.AccountPicker;

Mas gostaria de saber de que biblioteca veio.

Eu até tentei procurar na amostra de calendário android original para a biblioteca da qual eu posso incluir com.google.android.gms.common. * Inspecionando um arquivo de cada vez, mas não consegui encontrá-lo. Como isso é possível?

O que estou fazendo de errado?

Muito obrigado por toda sua ajuda.

questionAnswers(2)

yourAnswerToTheQuestion