Solicitud de inicio de sesión de GoogleIdToken devuelve null

Yo bifurcó este proyecto de muestra de google y corrió el inicio de sesión de Android.

He configurado las opciones en la consola de desarrolladores de Google y tengo un ID de cliente, pero al ejecutar el proyecto, el identificador de id aparece nulo.

El código completo está aquí
Este código solicita el token de id.

GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestIdToken(getString(R.string.server_client_id)) .requestEmail() .build(); 

¿Estoy perdiendo algo en la configuración, cualquier sugerencia.

Aquí está el registro

 12-04 15:55:59.247 13251-13251/? I/SELinux: Function: selinux_android_load_priority [0], There is no sepolicy file. 12-04 15:55:59.247 13251-13251/? I/SELinux: Function: selinux_android_load_priority [1], There is no sepolicy version file. 12-04 15:55:59.247 13251-13251/? I/SELinux: Function: selinux_android_load_priority , priority version is VE=SEPF_GT-N7100_4.4.2_0033 12-04 15:55:59.247 13251-13251/? I/SELinux: selinux_android_seapp_context_reload: seapp_contexts file is loaded from /seapp_contexts 12-04 15:55:59.252 13251-13251/? D/dalvikvm: Late-enabling CheckJNI 12-04 15:55:59.362 13251-13251/com.google.samples.quickstart.signin I/dalvikvm: Could not find method android.app.Notification$Builder.setLocalOnly, referenced from method com.google.android.gms.common.GooglePlayServicesUtil.zza 12-04 15:55:59.362 13251-13251/com.google.samples.quickstart.signin W/dalvikvm: VFY: unable to resolve virtual method 194: Landroid/app/Notification$Builder;.setLocalOnly (Z)Landroid/app/Notification$Builder; 12-04 15:55:59.362 13251-13251/com.google.samples.quickstart.signin D/dalvikvm: VFY: replacing opcode 0x6e at 0x00c8 12-04 15:55:59.367 13251-13251/com.google.samples.quickstart.signin I/dalvikvm: Could not find method android.content.pm.PackageManager.getPackageInstaller, referenced from method com.google.android.gms.common.GooglePlayServicesUtil.zzh 12-04 15:55:59.367 13251-13251/com.google.samples.quickstart.signin W/dalvikvm: VFY: unable to resolve virtual method 453: Landroid/content/pm/PackageManager;.getPackageInstaller ()Landroid/content/pm/PackageInstaller; 12-04 15:55:59.367 13251-13251/com.google.samples.quickstart.signin D/dalvikvm: VFY: replacing opcode 0x6e at 0x000b 12-04 15:55:59.402 13251-13275/com.google.samples.quickstart.signin I/GMPM: App measurement is starting up 12-04 15:55:59.417 13251-13251/com.google.samples.quickstart.signin W/dalvikvm: VFY: unable to find class referenced in signature (Landroid/view/SearchEvent;) 12-04 15:55:59.417 13251-13251/com.google.samples.quickstart.signin I/dalvikvm: Could not find method android.view.Window$Callback.onSearchRequested, referenced from method android.support.v7.internal.view.WindowCallbackWrapper.onSearchRequested 12-04 15:55:59.417 13251-13251/com.google.samples.quickstart.signin W/dalvikvm: VFY: unable to resolve interface method 15687: Landroid/view/Window$Callback;.onSearchRequested (Landroid/view/SearchEvent;)Z 12-04 15:55:59.417 13251-13251/com.google.samples.quickstart.signin D/dalvikvm: VFY: replacing opcode 0x72 at 0x0002 12-04 15:55:59.422 13251-13251/com.google.samples.quickstart.signin I/dalvikvm: Could not find method android.view.Window$Callback.onWindowStartingActionMode, referenced from method android.support.v7.internal.view.WindowCallbackWrapper.onWindowStartingActionMode 12-04 15:55:59.422 13251-13251/com.google.samples.quickstart.signin W/dalvikvm: VFY: unable to resolve interface method 15691: Landroid/view/Window$Callback;.onWindowStartingActionMode (Landroid/view/ActionMode$Callback;I)Landroid/view/ActionMode; 12-04 15:55:59.422 13251-13251/com.google.samples.quickstart.signin D/dalvikvm: VFY: replacing opcode 0x72 at 0x0002 12-04 15:55:59.462 13251-13251/com.google.samples.quickstart.signin I/dalvikvm: Could not find method android.content.res.TypedArray.getChangingConfigurations, referenced from method android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations 12-04 15:55:59.462 13251-13251/com.google.samples.quickstart.signin W/dalvikvm: VFY: unable to resolve virtual method 528: Landroid/content/res/TypedArray;.getChangingConfigurations ()I 12-04 15:55:59.462 13251-13251/com.google.samples.quickstart.signin D/dalvikvm: VFY: replacing opcode 0x6e at 0x0002 12-04 15:55:59.462 13251-13251/com.google.samples.quickstart.signin I/dalvikvm: Could not find method android.content.res.TypedArray.getType, referenced from method android.support.v7.internal.widget.TintTypedArray.getType 12-04 15:55:59.462 13251-13251/com.google.samples.quickstart.signin W/dalvikvm: VFY: unable to resolve virtual method 550: Landroid/content/res/TypedArray;.getType (I)I 12-04 15:55:59.462 13251-13251/com.google.samples.quickstart.signin D/dalvikvm: VFY: replacing opcode 0x6e at 0x0002 12-04 15:55:59.512 13251-13251/com.google.samples.quickstart.signin D/AbsListView: Get MotionRecognitionManager 12-04 15:55:59.567 13251-13251/com.google.samples.quickstart.signin D/libEGL: loaded /system/lib/egl/libEGL_mali.so 12-04 15:55:59.567 13251-13251/com.google.samples.quickstart.signin D/libEGL: loaded /system/lib/egl/libGLESv1_CM_mali.so 12-04 15:55:59.572 13251-13251/com.google.samples.quickstart.signin D/libEGL: loaded /system/lib/egl/libGLESv2_mali.so 12-04 15:55:59.637 13251-13251/com.google.samples.quickstart.signin D/OpenGLRenderer: Enabling debug mode 0 12-04 15:56:12.417 13251-13251/com.google.samples.quickstart.signin D/IdTokenActivity: onActivityResult:GET_TOKEN:success:false 12-04 15:56:48.477 13251-13257/com.google.samples.quickstart.signin D/dalvikvm: GC_FOR_ALLOC freed 707K, 17% free 9803K/11764K, paused 34ms, total 34ms 

Script de construcción de nivel superior

 buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.5.0' classpath 'com.google.gms:google-services:1.5.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } } 

Script de compilación de nivel de aplicación

 apply plugin: 'com.android.application' apply plugin: 'com.google.gms.google-services' android { compileSdkVersion 23 buildToolsVersion "23.0.2" defaultConfig { applicationId "com.google.samples.quickstart.signin" minSdkVersion 18 targetSdkVersion 23 versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { exclude 'LICENSE.txt' } // Resolve dependency differences between app and tests configurations.all { resolutionStrategy.force 'com.android.support:support-annotations:23.1.1' } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.1.1' compile 'com.android.support:design:23.1.1' // Dependency for Google Sign-In compile 'com.google.android.gms:play-services-auth:8.3.0' // UiAutomatorTesting androidTestCompile 'com.android.support.test:runner:0.2' androidTestCompile 'com.android.support.test:rules:0.2' androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.0' androidTestCompile 'com.android.support:support-annotations:23.1.1' } 

Archivo google-services.json

 { "project_info": { "project_id": "se....-la..da-......", "project_number": "6043........", "name": "Demo" }, "client": [ { "client_info": { "mobilesdk_app_id": "1:6.3....24..:and..id:f62.........40e", "client_id": "android:com.example.googlesignindemo", "client_type": 1, "android_client_info": { "package_name": "com.example.googlesignindemo" } }, "oauth_client": [ { "client_id": "604...430-uho...slp......v2l........d9...ps.g.....leu........com", "client_type": 1, "android_info": { "package_name": "com.example.googlesignindemo", "certificate_hash": "mysha1 fingerprint from debug keystore" } } ], "api_key": [], "services": { "analytics_service": { "status": 1 }, "cloud_messaging_service": { "status": 1, "apns_config": [] }, "appinvite_service": { "status": 1, "other_platform_oauth_client": [] }, "google_signin_service": { "status": 2 }, "ads_service": { "status": 1 } } } ], "client_info": [], "ARTIFACT_VERSION": "1" } 

Como ya he comentado y como documentación de Google, deberías usar el tipo de cliente " Id. De cliente " en lugar de " Id. De cliente " de tipo "Android" .

Como la siguiente captura de pantalla:

BNK's captura de pantalla

Utilizar "default_web_client_id" en GoogleSignInOptions

  GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) .requestIdToken(getString(R.string.default_web_client_id)) .requestEmail() .build(); 

Funciona perfectamente.

  • Google api gettoken (Context, String, String) ahora está obsoleto
  • Google signIn no funciona en el modo de liberación apk android
  • Obtención de 'E / TokenRequestor: Tiene configuraciones relacionadas con OAuth2 erróneas. Error detallado: INVALID_AUDIENCE 'incluso después de proporcionar identificaciones de cliente precisas
  • Goole Firme para iOS o Android con acceso sin conexión, el servidor siempre obtiene redirect_uri_mismatch
  • Compruebe si el usuario ya ha iniciado sesión utilizando Auth.GoogleSignInApi?
  • Archivo de configuración de inicio de sesión de Google para varios desarrolladores
  • Cómo resolver el problema de "com.google.android.gms.auth.api.signin.internal.SignInHubActivity" ActivityNotFoundException in google signin integration
  • Cómo autenticar Google Android con el servidor Node
  • MGoogleApiClient no se puede lograr en otra actividad
  • ¿por qué requestIdToken devuelve null?
  • <Your App> tiene problemas con los servicios de Google Play. Cuando usa GoogleApiClient, siempre activa onConnectionFailed
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.