studio services play google gms failed android android-gradle google-play-services google-services-json

android - play - Falta api_key/clave actual con Google Services 3.0.0



google-< services json (17)

Usando Firebase

GoogleServices''. > Missing api_key/current_key object

Recibí este error después de actualizar un proyecto existente a los nuevos servicios de Firebase. El archivo generado google-service.json descargado de la página de configuración del proyecto firebase no incluía la api_key necesaria.

De las otras respuestas aquí parece que Google / Firebase Cloud Messaging (GCM / FCM) necesita agregarse para que esta api_key se incluya en el archivo google-service.json .

Así que agregué dependencias en Firebase FCM antes de descargar el archivo nuevamente, y esta vez se incluyó la clave.

Incluir FCM (GCM)

dependencies { compile ''com.google.firebase:firebase-messaging:9.0.0'' }

Desde que actualicé el proyecto con la última versión de los servicios y bibliotecas de google (9.0.0), tengo este extraño problema:

Consola de grado:

:app:processDebugGoogleServices Parsing json file: /Users/cyrilmorales/Documents/Projects/mobilemeans-punainenristi/app/google-services.json :app:processDebugGoogleServices FAILED Error:Execution failed for task '':app:processDebugGoogleServices''. > Missing api_key/current_key object Information:BUILD FAILED

build.gradle (root):

dependencies { classpath ''com.android.tools.build:gradle:2.2.0-alpha1'' classpath ''com.google.gms:google-services:3.0.0'' }

build.gradle (aplicación):

dependencies { .... compile ''com.google.android.gms:play-services-analytics:9.0.0'' compile ''com.google.android.gms:play-services-gcm:9.0.0'' compile ''com.google.android.gms:play-services-maps:9.0.0'' compile ''com.google.android.gms:play-services-location:9.0.0'' ... } apply plugin: ''com.google.gms.google-services''

Sin embargo, funciona bien con las bibliotecas de servicios de reproducción en 8.4.0 y google-services 2.1.0

¿Tienes alguna idea de la solución?


Agregar un valor de clave actual vacío en el archivo google-services.json resolvió este problema para mí

"api_key": [{ "current_key": "" }]


Aunque la respuesta aceptada de Jozka Jozin y sus comentarios, Cloud Messaging no está relacionado ni es obligatorio.

Sin embargo, volver a generar google-services.json es la clave de la solución (así que lo voté). A continuación se muestra lo que hice:

Como sabe, puede generar el archivo de configuración para Analytics en la Guía para desarrolladores de Google .

1: elige tu aplicación.

2: ¡Cierra la ventana emergente! Se esconde ...

3: ¡ LA OPCIÓN DE ADMOB!

4 : Por supuesto, ¡selecciónalo y habilítalo!

5: ¡Ahora podemos generar correctamente archivos de configuración!

6: ¡Lo logramos! Esta vez, el archivo de configuración debe incluir la api_key adecuadamente.

Conclusión: la interfaz de usuario de la herramienta de generación interactiva es un poco confusa ...


Debe agregar las huellas digitales del certificado SHA a su proyecto y luego descargar el archivo google-services.jason nuevamente, que debe contener "api_key": [{"current_key": "xxxxxx"}] automáticamente.

Puede ver la siguiente página para ver cómo generar las huellas digitales:

https://developers.google.com/android/guides/client-auth

En Windows, simplemente ejecute el siguiente comando y use Android como contraseña para la depuración:

keytool -exportcert -list -v -alias androiddebugkey -keystore %USERPROFILE%/.android/debug.keystore


Genere un nuevo archivo de configuración (google-services.json) desde: https://developers.google.com/cloud-messaging/android/client#get-config

"api_key": [ { "current_key": XXX } ] archivo de configuración con "api_key": [ { "current_key": XXX } ] en la sección del cliente

Actualización: o servicio habilitado manualmente en la consola del desarrollador y generar clave.


Para los migradores de firebase:

asegúrese de haber agregado al menos una huella digital en la configuración de su proyecto y vuelva a descargar el archivo google-services.json



Primero en tu archivo JSON

Reemplazar

"api_key": []

con

"api_key": [{ "current_key": "" }]

Entonces la construcción de Gradle será exitosa, pero cuando ejecute su aplicación, puede obtener errores como los siguientes ...

Error:Execution failed for task '':app:transformResourcesWithMergeJavaResForDebug''. > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE File1: C:/Users/bucky/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-core/2.2.2/d20be6a5ddd6f8cfd36ebf6dea329873a1c41f1b/jackson-core-2.2.2.jar File2: C:/Users/bucky/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-databind/2.2.2/3c8f6018eaa72d43b261181e801e6f8676c16ef6/jackson-databind-2.2.2.jar File3: C:/Users/bucky/.gradle/caches/modules-2/files-2.1/com.fasterxml.jackson.core/jackson-annotations/2.2.2/285cb9c666f0f0f3dd8a1be04e1f457eb7b15113/jackson-annotations-2.2.2.jar

Para solucionar este problema, puede agregar lo siguiente a su archivo app.gradle. Funcionó para mí.

packagingOptions { exclude ''META-INF/DEPENDENCIES'' exclude ''META-INF/LICENSE'' exclude ''META-INF/LICENSE.txt'' exclude ''META-INF/license.txt'' exclude ''META-INF/NOTICE'' exclude ''META-INF/NOTICE.txt'' exclude ''META-INF/notice.txt'' exclude ''META-INF/ASL2.0'' }

Editar: me mostró un error más tarde al construir el archivo apk. Así que tuve que descargar el archivo json nuevamente. Después de la prueba 2, obtuve el archivo json con una clave de API válida.


Pude resolver este problema con estos pasos que no se responden aquí. Esta respuesta NO está habilitando Cloud Messaging, solo está recuperando su clave de servidor.

Primero, vaya a Firebase Console, luego vaya a Configuración del proyecto y luego haga clic en la pestaña "Mensajería en la nube". Mire donde dice "clave de servidor" y si no aparece una clave larga (no el número de "Id. Del remitente") haga clic en "Regenerar clave" y ahora debería aparecer una clave larga. Copie esa clave y colóquela en su archivo google-services.json en: "api_key": [ {"current_key" : "key goes here"} ] .

Este método me ayudó mientras ninguno de los otros funcionaba, así que espero que esto ayude a alguien.


Puede descargar el archivo google-services.json nuevamente.

Pasos para descargar:

1) Haz clic en el menú superior de tu aplicación en Firebase Console.

2) Haga clic en administrar.

3) Encontrará Download the latest config opción Download the latest config archivo de Download the latest config , descargue y reemplace el archivo google-services.json en su aplicación.


Sí, como por primera vez con Firebase, me enfrento así. Haz clic en el menú de tu aplicación y haz clic en "Administrar".

puede descargar google-services.json nuevamente.


Si está utilizando firebaes, debe copiar serverKey desde firebase a google-services.json

"api_key": [{ "current_key": "SERVER_KEY"}

Para obtener la clave del servidor, vaya a Descripción general del proyecto> Configuración del proyecto> CloudMessaging> Copiar O generar y copiar la clave del servidor.


Si no desea reconfigurar y descargar el archivo google-services.json , puede obtener la clave de API directamente desde la consola de Firebase. Solo ve a

Descripción general> Agregar otra aplicación> Web

Obtendrá la configuración de su base de datos que contendrá apiKey . Simplemente copie ese valor y colóquelo en el valor current_key indicado por XXX a continuación

"api_key": [{ "current_key": "XXX" }]


Si no está utilizando Firebase, el enlace correcto para generar el archivo de configuración google-services.json se encuentra here .


agregue esto a su archivo google-service.json. lo encontrará en app / google-service.json

"api_key": [{"current_key": "your-google-api-key"}]


regenere google-services.json en https://developers.google.com/cloud-messaging/android/client#get-config , una cosa importante es que debe habilitar Cloud Messaging en el paso "Elegir servicios" , abra el nuevo google -services.json verá palabras como

"api_key": [ { "current_key": "xxxxxxxxxxx" }"

sin estas palabras o sin el valor de current_key no es el archivo correcto


Haga clic en Descripción general -> Icono de engranaje -> Configuración del proyecto.

Vaya a Descargar la última configuración y haga clic en el botón google-service.json para descargar el archivo y guardarlo en la carpeta de la aplicación y compilar nuevamente. ¡Disfrutar!