NoClassDefFoundError en la biblioteca de Google Play Services V2

Recibo la siguiente excepción cuando trato de usar la biblioteca de Google Play Services V2 después de seguir el tutorial oficial .

java.lang.NoClassDefFoundError: com.google.android.gms.R$string at com.google.android.gms.common.GooglePlayServicesUtil.b(Unknown Source) at com.google.android.gms.common.GooglePlayServicesUtil.a(Unknown Source) at com.google.android.gms.common.GooglePlayServicesUtil.getErrorDialog(Unknown Source) 

¿Qué hice mal?

La versión 2 incluye recursos y se debe importar como un proyecto de biblioteca. Consulte las instrucciones en http://developer.android.com/google/play-services/setup.html para saber cómo hacerlo en varios IDEs.

Los recursos son para GooglePlayServicesUtil.getErrorDialog (), que le indica al usuario que instale, actualice, active, etc. Servicios de Google Play si no está disponible en el dispositivo.

También tengo los mismos problemas una vez, seguí el paso correctamente y soy capaz de resolver este problema

Primero (configure su proyecto desde la consola de Google Developer) Vaya a la consola API – Google Code

Crear un proyecto Como se muestra en las imágenes enter image description here

Haga clic en Crear y luego le pedirá que agregue un nombre de proyecto como se muestra

enter image description here

una vez que cree su proyecto, es hora de seleccionar el servicio que necesitamos usar. En este caso, necesitamos el mapa de android v2 para seleccionar el API v2 de Google Maps Android del servicio. Como se muestra, enter image description here

Ahora vaya a Api Access y cree su OAuth 2.0. Proporcione el nombre de su paquete y la huella digital SHA1 en los campos correspondientes. enter image description here

una vez que termine con OAuth 2.0, estamos listos para usar su clave API enter image description here

Ahora crea un proyecto de Android con el mismo nombre de paquete utilizado al crear OAuth 2.0. y compruebe si tiene el servicio de google play en Android SDK Manager; de lo contrario, instale el servicio de google play. enter image description here

Después de instalar Google playservice, encontrará una biblioteca de Google Play en Your Android YourSdkpath \ extras \ google \ google_play_services .Import que se proyecte a su área de trabajo y la proporcione como la biblioteca de referencia para su proyecto enter image description here

enter image description here

enter image description here

Después de eso, coloque los archivos java y xml correspondientes en su proyecto.

MainActivity.java

 package yourpackage;//Package name used while creating the Api key import com.google.android.gms.common.ConnectionResult; import com.google.android.gms.common.GooglePlayServicesUtil; import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.SupportMapFragment; import android.os.Bundle; import android.app.Activity; import android.app.Dialog; import android.support.v4.app.FragmentActivity; import android.view.Menu; public class MainActivity extends FragmentActivity { GoogleMap googleMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Getting status int status = GooglePlayServicesUtil.isGooglePlayServicesAvailable(getBaseContext()); // Showing status if(status==ConnectionResult.SUCCESS) { SupportMapFragment supportMapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); // Getting a reference to the map googleMap = supportMapFragment.getMap(); } else{ int requestCode = 10; Dialog dialog = GooglePlayServicesUtil.getErrorDialog(status, this, requestCode); dialog.show(); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.activity_main, menu); return true; } } 

activity_main.xml

  

AndroidManifest.xml

 < ?xml version="1.0" encoding="utf-8"?>                   

Espero que te ayude

Para Android Studio:

1) Abra la configuración del módulo:

2) Agregar el módulo (de importación) google_play_service_lib del SDK

Imagen

3) Módulo google_play_service_lib comprobar como Biblioteca

4) Agregue la biblioteca google_play_service.jar desde SDK

5) Finalizar

Imagen

Si ya ha actualizado SDK y obtiene dicho error, recuerde:

  • use la nueva versión de google-play-services.jar si tiene copiado este archivo en su proyecto eclipse
  • establecer target = android-19 en project.properties
  • para una API más nueva (uso la API 19) es posible que necesites agregar el siguiente código

AndroidManifest.xml

   

También uso ourSdkpath \ extras \ google \ google_play_services como la biblioteca Eclipse importada como se describió anteriormente.

Resolví este error al marcar “Copiar proyectos en el espacio de trabajo” al importar la lib de los servicios de google play.
Más información aquí: http://developer.android.com/google/play-services/setup.html

si estás usando

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

cámbielo a uno individual como

 compile 'com.google.android.gms:play-services-location:9.0.2' 

también agregue compile 'com.android.support:multidex:1.0.1' si tiene multiDexEnabled=true

Tengo el mismo problema con Android Studio cuando construyo un proyecto sin Gradle. Puede ser un problema con el nombre del paquete en AndroidManifest.xml en el proyecto GooglePlayService. Debería ser package = “com.google.android.gms” .

El problema aparece cuando agrego el Proyecto de Biblioteca como “Nuevo Módulo” en lugar de “Importar Módulo” .

enter image description here

Cuando elige Nuevo módulo, Android Studio muestra un diálogo para especificar “Nombre del módulo” y “Nombre del paquete” y, de forma predeterminada, “Nombre del paquete” parece “com.example.MODULE_NAME_YOU_SPECIFED”, lo cual es incorrecto . Es muy fácil perderlo, porque el proyecto se construye con éxito.

enter image description here

Cuando agrega Proyecto de Biblioteca mediante “Importar Módulo” todo debería estar bien, porque Android Studio solo agrega el proyecto sin hacer ningún cambio con el código fuente de Proyecto de Biblioteca.

También me enfrento al mismo problema. Si ejecuta su aplicación en emulador, entonces puede enfrentar este error porque en la mayoría de los emuladores no hay google playService (aplicación Play Store) instalada.

Intenta ejecutar tu aplicación en un dispositivo Android que esté instalado la aplicación playService.

Solución: agregue código de pieza de error en try...catch y luego intente también funcionará en emulator.

Nota: – El servicio de mensajería de Google requiere servicio de pago. de lo contrario arrojar error SERVICE_NOT_AVAILABLE