Android Studio con servicios de Google Play


Estoy tratando de probar los servicios de Google Play con el nuevo Android Studio. Tengo un proyecto con una dependencia de google_play_services.frasco. Pero cuando intento reconstruir el proyecto obtengo los siguientes errores:

Information:[TstGP3-TstGP3] Crunching PNG Files in source dir: C:\Users\ans\AndroidStudioProjects\TstGP3\TstGP3\src\main\res
Information:[TstGP3-TstGP3] To destination dir: C:\Users\ans\AndroidStudioProjects\TstGP3\build\classes\res-cache\TstGP3-TstGP3
Information:Compilation completed with 2 errors and 0 warnings in 2 sec
Information:2 errors
Information:0 warnings
C:\Users\ans\.AndroidStudioPreview\system\compiler\tstgp3.3f17bd41\.generated\Android_BuildConfig_Generator\TstGP3-TstGP3.74fc5b25\production\com\example\tstgp3\BuildConfig.java
    Error:Error:line (4)error: duplicate class: com.example.tstgp3.BuildConfig
C:\Users\ans\.AndroidStudioPreview\system\compiler\tstgp3.3f17bd41\.generated\aapt\TstGP3-TstGP3.74fc5b25\production\com\example\tstgp3\R.java
    Error:Error:line (10)error: duplicate class: com.example.tstgp3.R

Parece que tiene dos archivos BuildConfig y también dos clases R. ¿Cómo puedo resolver el problema?

EDITAR:

He notado que el compilador compila dos R.java archivos: la que está en mi carpeta de proyecto y otro que se encuentra en la carpeta % USERPROFILE%.Revisión del estudio de androides Por lo tanto, traté de excluir esta carpeta "Vista previa" en la configuración del compilador y ahora está funcionando. Este problema solo ocurre después de haber comenzado a usar las clases de Servicios de Google Play en mi proyecto. Agradezco si alguien puede explicar la razón detrás de este problema.

Author: androidtester, 2013-05-18

11 answers

Todas esas respuestas son erróneas, ya que el lanzamiento de gradle plugin v0.4.2 la configuración de los servicios de Google play en android studio es sencilla. No es necesario importar ningún jar o agregar ninguna biblioteca de proyectos ni agregar ningún módulo nuevo en android Studio. Lo que tienes que hacer es agregar las dependencias correctas a la compilación.archivo gradle. Por favor, echa un vistazo a esos enlaces: Gradle plugin v0. 4. 2 update, Nuevo sistema de construcción , y esta muestra

El Correcto la manera de hacerlo es la siguiente:

En primer lugar tienes que iniciar el sdk manager y descargar e instalar los siguientes archivos ubicados en "extras": Repositorio de soporte de Android, Servicios de Google play, Repositorio de Google .

Reinicie android studio y abra el archivo build gradle. Debes modificar tu compilación.archivo de gradle para tener este aspecto bajo dependencias:

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

Y finalmente sincronizar su proyecto (el botón a la izquierda del AVD manager).

Desde la versión 6.5 puedes incluir la librería completa (muy grande) o solo los módulos que necesites (La Mejor Opción). Es decir, si solo necesita Google Maps y Analytics, puede reemplazar el ejemplo anterior con el siguiente:

dependencies {  
    compile 'com.google.android.gms:play-services-base:6.5.87'    
    compile 'com.google.android.gms:play-services-maps:6.5.87'  
}

Puede encontrar la lista completa de dependencias aquí

Algunas notas al margen:

  • Utilice la última versión de la biblioteca de servicios de reproducción. Si es una versión antigua, android studio lo hará resalte. A partir de hoy (5 de febrero es 6.5.87), pero se puede comprobar la última versión en Gradle Please
  • Después de una actualización importante de Android Studio, limpia una reconstrucción de tu proyecto siguiendo las siguientes instrucciones como se sugiere en los comentarios de @user123321

    Cd a la carpeta del proyecto
    ./ gradlew clean
    ./ gradlew build

 244
Author: Imanol,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-02-05 16:06:18
  1. Vaya a Archivo - > Estructura del proyecto
  2. Seleccione 'Configuración del proyecto'
  3. Seleccione la pestaña 'Dependencias'
  4. Haga clic en '+' y seleccione '1.Dependencias de Biblioteca '
  5. Buscar: com.Google.androide.gms: play-services
  6. Seleccione la última versión y haga clic en 'OK'

Voila! No hay necesidad de luchar con Gradle:)

 111
Author: Ivo Stoyanov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-25 14:35:30

EDITADO: Este tipo realmente lo trajo a casa y tiene un buen tutorial http://instantiatorgratification.blogspot.com/2013/05/google-play-services-with-android-studio.html

Una nota al margen: Había jugado tanto que necesitaba hacer un gradlew clean para que funcionara con éxito

Si ha importado su proyecto o está trabajando desde la aplicación Sample Maps ubicada en \ extras \ google\google_play_services \ samples \ maps, compruebe esto tutorial.

Https://stackoverflow.com/a/16598478/2414698

Si está creando un nuevo proyecto desde cero, tenga en cuenta los comentarios de Xav en esa misma publicación. Describe que Android Studio utiliza un compilador diferente y que tienes que modificar la compilación.gradle archivo manualmente. Lo hice con éxito. Copié

  • google-play-services.jar
  • google-play-services.frasco.propiedades

En mi directorio lib y agregó lo siguiente a mi construir.gradle file

dependencies {
    compile files('libs/android-support-v4.jar')
    compile files('libs/google-play-services.jar')
}

También, si se trata de un nuevo proyecto echa un vistazo a este post, también.

Https://stackoverflow.com/a/16671865/2414698

 5
Author: packerprogrammer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 10:31:27

La mayoría de estas respuestas solo abordan dependencias en tiempo de compilación, pero encontrará una serie de excepciones NoClassDef en tiempo de ejecución. Eso es porque necesitas más que los servicios de Google-play.frasco. Hace referencia a recursos que son parte del proyecto de la biblioteca, y esos no se incluyen correctamente si solo tiene el jar.

Lo que funcionó mejor para mí fue primero configurar el proyecto correctamente en eclipse. Tener tu proyecto estructurado de manera que incluya tanto tu app como la biblioteca, como descrito aquí: http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Multi-project-setup

Luego exporta tu proyecto de aplicación desde eclipse e impórtalo a Android Studio como se describe aquí: http://developer.android.com/sdk/installing/migrate.html . Asegúrate de exportar tanto tu proyecto de app como el proyecto de la biblioteca de Google play Services. Al importarlo detectará el proyecto de la biblioteca e importarlo como un módulo. Acabo de aceptar todos los valores predeterminados durante el proyecto proceso de importación.

 4
Author: Brad Armstrong,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-27 16:39:26

Integración de Google Play services en Android studio.

Paso 1:

SDK manager->Tools Update this

1.Google play services
2.Android Support Repository

Paso 2:

chance in build.gradle 
defaultConfig {
        minSdkVersion 8
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile 'com.google.android.gms:play-services:4.0.+'
}

Paso 3:

 android.manifest.xml
<uses-sdk
        android:minSdkVersion="8" />

Paso 4:

Sync project file with grandle.
wait for few minute.

Paso 5:

File->Project Structure find error with red bulb images,click on go to add dependencies select your app module.
Save

Por favor, escriba un comentario si necesita ayuda. Feliz codificación.

 2
Author: Harshid,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-01-22 09:50:24

Ninguna de las soluciones anteriores funcionó para mí. No estoy seguro de si es específico para mi configuración o nueva versión.

Estoy usando Android Studio Beta 0.8.9 y no estaba recibiendo ninguna com.Google.androide.gms: play-service en la lista de la biblioteca siguiendo esta instrucción:

Vaya a Archivo -> Estructura del Proyecto -> Seleccione Configuración del Proyecto -> Seleccione 'Dependencias' Haga clic en la pestaña '+' -> 1.Dependencias de Biblioteca - > Seleccionar com.Google.androide.gms: play-services: +

Ya había hecho esto:

En primer lugar, debe iniciar el sdk manager y descargar e instalar los siguientes archivos ubicados en "extras": Android support repository, Google play services, Google repository.

Lo que resolvió fue agregar desde SDK Manager, "Google play services for Froyo" y luego repetir el primer paso.

No entendió la razón correctamente, pero esto funcionó.

PD: Acabo de observar que incluso ahora, cuando busco servicios de juego, esto no ven, pero cuando me desplazo directamente y miro a través de la lista está justo ahí.

 2
Author: Selfx Aadhyant,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-14 01:09:35

Siga este artículo - > http://developer.android.com/google/play-services/setup.html

Debes elegir usar Android Studio

introduzca la descripción de la imagen aquí

Ejemplo de archivo Gradle:

Nota: Abre la compilación.archivo gradle dentro de tu módulo de aplicación directorio.

apply plugin: 'com.android.application'

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "{applicationId}"
        minSdkVersion 14
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:20.+'
    compile 'com.google.android.gms:play-services:6.1.+'
}

Puede encontrar la última versión de los servicios de Google Play aquí: https://developer.android.com/google/play-services/index.html

 2
Author: d.danailov,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-24 16:15:18

Tengo esto funcionando después de hacer lo siguiente:

  • Tenga google-play-services-lib como un módulo (note la diferencia entre módulo y proyecto), luego agregue google-play-services.jar a sus modelos "libs" directorio.
  • Después de eso, agregue el jar a su ruta de compilación a través de la creación de una biblioteca o agregue el jar a otra biblioteca. Generalmente tengo una sola biblioteca de IDEAS que agrego todos mis / libs/*.archivos jar.
  • Agregue la biblioteca a su ruta de compilación de módulos a través del Módulo Ajustes (F4).
  • Agregue google-play-services-lib como una dependencia de módulo a su proyecto.
  • Hecho!

Nota: Esto tampoco me da las excepciones de tiempo de ejecución, funciona.

 1
Author: Johan S,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-06-02 11:18:34

Abre la compilación de tu proyecto .gradle archive y agregue la línea debajo del módulo de dependencias.

dependencies {
    compile 'com.google.android.gms:play-services:7.0.0'
}

El siguiente será agregar Google Analytics y Mapas si no se quieren integrar biblioteca completa

dependencies {
    compile 'com.google.android.gms:play-services-analytics:7.0.0'
    compile 'com.google.android.gms:play-services-maps:7.0.0'
}
 0
Author: Pankaj,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-22 11:27:26

En mi caso google-play-services_lib se integran como módulo (Libs externas) para Google map & GCM en mi proyecto.

Ahora, estos tiempos requieren implementar API de Autocompletar de Google Places pero el problema es que el código es nuevo y mis libs son viejas, por lo que algunas clases no se encuentran:

Siguiendo estos pasos...

1 > Actualizar Google play service en SDK Manager

2> seleccione nuevo .archivo jar del servicio google play (Sdk/extras/google/google_play_services/libproject/google-play-services_lib / libs) reemplazar por uno antiguo

Tengo éxito...!!!
 0
Author: Dhruv Raval,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-12-28 13:40:16

Copié los archivos de play libs desde google-play-services_lib al directorio de mi proyecto libs:

  • google-play-services.jar
  • google-play-services.frasco.propiedad.

Luego los seleccionó, haga clic derecho, "Agregar como bibliotecas".

 -3
Author: please delete me,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-18 15:53:14