¿Agregas la versión de los servicios de Google Play al manifiesto de tu aplicación?


88

Estoy siguiendo este tutorial: https://developers.google.com/maps/documentation/android/start#overview sobre cómo agregar Google Maps a una aplicación dentro del SDK de Android.

El único problema que parece tener es durante este momento (he hecho todo lo demás sin errores):

Edit your application's AndroidManifest.xml file, and add the following declaration within the

 <application> element. This embeds the version of Google Play services that the app was compiled with.

 <meta-data
 android:name="com.google.android.gms.version"
 android:value="@integer/google_play_services_version" />

The error is:
   No resources found that match the given name (at 'value' with value '@integer/    
   google_play_services_version').

Intenté seguir la solución de esta persona para el mismo problema: actualización de la biblioteca de servicios de Google Play y falta el símbolo @ integer / google_play_services_version

pero sigo recibiendo el mismo error. ¿Alguna ayuda por favor?


Si Eclipse le da problemas, intente hacer esto: stackoverflow.com/a/19990244/166921
Kamil Szot

Respuestas:


100

Es probable que su biblioteca no esté vinculada al proyecto correctamente o que tenga una versión anterior de la biblioteca de google-play-services, por lo que aparece un conflicto y Eclipse se volvió estúpido ..: S

No, no es necesario agregar nada en integers.xml. Cuando vincule correctamente la biblioteca de servicios de Google play a su proyecto android:value="@integer/google_play_services_version", se encontrará la referencia y estará listo para comenzar. Cuando agregue una biblioteca a su proyecto, simplemente haga una limpieza más limpia y divertida del entorno Eclipse correctamente.

Si codifica en algún lugar este número cuando llegue la próxima versión de reproducción, deberá actualizarlo. Y si lo olvidas, volverás a dedicar tiempo a buscar errores ..: S

Espero que haya ayudado. ;)


1
sí, en Android Studio agregué el servicio Google Play como módulo (no como biblioteca), pero olvidé agregar este módulo a mi módulo de proyecto donde está el archivo de manifiesto. Esto resolvió el problema :)
Ragaisis

18
Gracias, esto solucionó mi problema. Para obtener una guía paso a paso a prueba de idiotas para hacer referencia a un proyecto de biblioteca en Eclipse / ADT, consulte los documentos de Google Tools . Aparentemente soy un idiota, porque estaba tratando de agregar la biblioteca en "Java Build Path: Bibliotecas" - no funciona.
Jeffro

Perdón por la respuesta tardía, pero sí, este era el problema, ¡la biblioteca no estaba vinculada correctamente a mi proyecto!
Adz

1
¿Cómo hacer eso por Ant?
Dzmitry Lazerka

2
Si ayuda, tuve que dar algunos pasos más en Android Studio. Fui a: Estructura del proyecto -> Aplicación -> Dependencias -> haga clic en + para agregar la opción de Biblioteca -> servicios de reproducción (xxx). Recibí un error cuando lo reconstruí y la biblioteca agregada era play-services ... 0.0. Me faltaban los repositorios de Google Play del SDK Manager en Extras. Cuando volví y repetí esos pasos, la biblioteca ahora tenía un número de versión real y se reconstruyó con éxito.
natur3

36

Tengo la solucion.

  • Paso 1: haga clic derecho en su proyecto en el Explorador de paquetes (lado izquierdo en eclipse)
  • Paso 2: ve a Android.
  • Paso 3: en la sección Biblioteca Agregar biblioteca ... (google-play-services_lib),
    vea los botones a continuación

    • Copie el proyecto de la biblioteca en

    <android-sdk>/extras/google/google_play_services/libproject/google-play-services_lib/

    • a la ubicación donde mantiene sus proyectos de aplicaciones de Android. Si está utilizando Eclipse, importe el proyecto de la biblioteca a su espacio de trabajo. Haga clic en Archivo> Importar, seleccione Android> Código de Android existente en el espacio de trabajo y busque la copia del proyecto de biblioteca para importarlo.
    • Haga clic aquí para obtener más información.
  • Paso 4: haga clic en Aplicar
  • Paso 5: haga clic en Aceptar
  • Paso 6: Actualice su aplicación desde el Explorador de paquetes.
  • Paso 7: verá que el error desapareció.

30

Desde aqui

Debes hacer referencia a una copia de la biblioteca que copiaste en tu espacio de trabajo de desarrollo; no debes hacer referencia a la biblioteca directamente desde el directorio del SDK de Android.

Me enfrenté a este error porque hice referencia a la copia original del directorio SDK. Asegúrese de copiar primero la biblioteca al espacio de trabajo de Android y solo hacer referencia a ella. En eclipse, puede hacerlo marcando "Copiar proyectos en el espacio de trabajo" al importar el proyecto.


3
aiaiai, horas perdidas por no marcar esta casilla ... ¡me alegro de haber encontrado esta respuesta! Debería ser más claro en la documentación de Google.
Marius Hilarious

Y ese fue mi problema, se hizo referencia a todo de la forma en que debería, excepto que la carpeta de origen de google lib no se copió en mi espacio de trabajo
JustADev

Esta solución también funcionó para mí. Pero me pregunto cuál es la diferencia técnicamente.
sivag1

Google debería actualizar la captura de pantalla / instrucciones aquí: developers.google.com/+/mobile/android/getting-started
ban-geoengineering

22

En Android Studio, puede solucionar este problema simplemente agregando esto a su archivo Gradle:

compile 'com.google.android.gms:play-services:6.5.87'

EDITAR

Ahora, debido a las actualizaciones y la nueva API de Gradle, la línea que debe usar es:

implementation 'com.google.android.gms:play-services:12.0.0'

Un consejo más importante : evite usar la versión empaquetada de Google Play Services, pero considere declarar solo las dependencias que su aplicación necesita para reducir su tamaño, así como para reducir el acceso innecesario al límite de 65k métodos. Algo como (es decir, para Maps) esto sería mejor que el uso general de los servicios de juego anterior:

implementation 'com.google.android.gms:play-services-maps:12.0.0'

Gracias, esto ayudó. Estoy tratando de hacer este tutorial y encontré
Simon

1
Solo necesitaba limpiar el proyecto, después de la sincronización de Gradle, y el error entero faltante desapareció. Esto también funciona bien:compile 'com.google.android.gms:play-services-appindexing:7.8.0'
Alguien en algún lugar

2
Sé que es un antiguo Q / A, pero la gente todavía se encuentra con él, por lo que tenía sentido actualizarlo a las nuevas API de AS3 y Gradle y enfatizar la necesidad de usar una biblioteca específica en lugar de un paquete completo. Espero que al autor original no le importe
Ewoks

7

Simplemente agregue la referencia de la biblioteca, vaya a Propertes-> Android, luego agregue la biblioteca.

ingrese la descripción de la imagen aquí

luego agrega en ti AndroidManifest.xml

   <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />

3

Tuve el mismo problema en Android Studio 1.2.1.1. Solo escuché que las otras respuestas dijeron, sin embargo, no pude encontrar dónde agregar las dependencias. Finalmente lo encontré en Archivo-> Estructura del proyecto-> Dependencias. Este menú le dará la opción de agregar la dependencia a la biblioteca de Google Play Services.


+1 para la ayuda sobre la navegación oscura en AS 1.2. ¡Gracias! En mi caso, no ayudó que estuviera trabajando en un proyecto entregado por otro desarrollador y nunca había instalado la versión correcta de la biblioteca de servicios de juego usando SDK manager: $. Una vez que descargué / instalé la biblioteca, volví y eliminé / agregué nuevamente y el error de compilación desapareció.
Anne Gunn


2

En mi caso, tuve que instalar el repositorio de Google desde el administrador de SDK.


1

Recibía el mismo error; Previamente había instalado google-play-services_lib para Google Maps (y estaba funcionando bien) pero luego, cuando más tarde intenté agregar la entrada de metadatos a mi Manifiesto, recibí el error. Probé todas las sugerencias anteriores pero nada las vinculaba correctamente; Finalmente eliminé el enlace de mi proyecto (project-properties-Android, eliminé la biblioteca google-play-services_lib), luego lo eliminé del espacio de trabajo de Eclipse, eliminé los archivos en el disco y finalmente usé el administrador de SDK para reinstalarlo desde cero.

Eso pareció finalmente hacer el truco; ahora Eclipse ha decidido permitirme dejar la entrada de metadatos sin errores.


Tuve el mismo error, la copia de la biblioteca google-play-services en mi espacio de trabajo era antigua (por lo que no contenía el recurso entero), y reemplazar la biblioteca con una versión actualizada funcionó.
Bianca Daniciuc

0

Puede cambiar el espacio de trabajo y luego solucionar ese problema y luego importar el proyecto fijo a su espacio de trabajo principal. Además, los 4 pasos deben ser para esperar que ayude a alguien en el futuro.


0

Este error también puede ocurrir cuando ha descargado una nueva versión de Google Play Services y no ha instalado el último SDK. Eso es lo que me pasó. Entonces, como mencionaron los demás, si intenta importar Google Play Services y luego abre la consola, verá un error de compilación. Intente instalar todos los SDK de Android recientes y vuelva a intentarlo, si este es el caso.


0

Hice los siguientes pasos para recuperarme de esto:

1) Importe los servicios de Google Play como proyecto en su SDK de Android. En mi sistema, se encuentra en C: \ adt-bundle-windows-x86_64-20140702 \ sdk \ extras \ google \ google_play_services \ libproject \ google-play-services_lib

2) Su aplicación de Android-> propiedades -> Android

En la ventana

2.1) Haga clic en las API de Google en el objetivo de compilación del proyecto 2.2) Agregue los servicios de Google Play en el marco inferior y haga clic en Aceptar

¡Espero que dé instrucciones claras sobre qué hacer!

Gracias.


0

En mi caso, necesitaba copiar la CARPETA google-play-services_lib en el mismo DRIVE de los códigos fuente de mis aplicaciones

  • F: \ Products \ Android \ APP * .java <- Mis aplicaciones están aquí, así que las copié en la carpeta de abajo
  • F: \ Productos \ Android \ libs \ google-play-services_lib

0

Simplemente quitando la biblioteca de servicios de Google Play del proyecto y agregando una vez más desde la sdk->extras->googlecarpeta resolvió mi problema perfectamente.


0

Para mi caso, simplemente reinicio mi Eclipse y funciona.

He estado trabajando durante 2 semanas sin apagarlo, creo que se vuelve loco.

¡Gracias por la sugerencia de Ewoks!


0

Reemplazar el código de la versión con el código apropiado de la versión de la biblioteca resolverá su problema, así:

 <integer name="google_play_services_version"> <versioncode> </integer>


-37

Deberá agregar un archivo "integers.xml" a la carpeta "res / values" de su proyecto. El contenido del archivo debe ser ..

<resources>
    <integer name="google_play_services_version">4030500</integer>
</resources>

6
nunca hagas eso, no es dinámico.
Panchicore

2
Esto es exactamente lo que no se puede hacer. Vea la respuesta de Ewoks, en stackoverflow.com/a/20068489/1450294
Michael Scheper
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.