J'essaie de faire fonctionner le exemple de code d'Android 'Google Maps Android API v2'. Je construis le projet sans erreurs. Cependant, lorsque j'essaie d'exécuter l'application sur mon Galaxy Nexus (connecté à USB sur mon ordinateur portable), l'application se bloque immédiatement.
C'est la journalisation:
Unable to resolve superclass of Lcom/example/mapdemo/BasicMapActivity; (66)
Link of class 'Lcom/example/mapdemo/BasicMapActivity;' failed
Could not find class 'com.example.mapdemo.BasicMapActivity', referenced from method com.example.mapdemo.MainActivity.<clinit>
VFY: unable to resolve const-class 108 (Lcom/example/mapdemo/BasicMapActivity;) in Lcom/example/mapdemo/MainActivity;
VFY: replacing opcode 0x1c at 0x000d
Exception Ljava/lang/NoClassDefFoundError; thrown while initializing Lcom/example/mapdemo/MainActivity;
Class init failed in newInstance call (Lcom/example/mapdemo/MainActivity;)
Shutting down VM
threadid=1: thread exiting with uncaught exception (group=0x41ac9930)
FATAL EXCEPTION: main
Java.lang.ExceptionInInitializerError
at Java.lang.Class.newInstanceImpl(Native Method)
at Java.lang.Class.newInstance(Class.Java:1319)
at Android.app.Instrumentation.newActivity(Instrumentation.Java:1054)
at Android.app.ActivityThread.performLaunchActivity(ActivityThread.Java:2097)
at Android.app.ActivityThread.handleLaunchActivity(ActivityThread.Java:2230)
at Android.app.ActivityThread.access$600(ActivityThread.Java:141)
at Android.app.ActivityThread$H.handleMessage(ActivityThread.Java:1234)
at Android.os.Handler.dispatchMessage(Handler.Java:99)
at Android.os.Looper.loop(Looper.Java:137)
at Android.app.ActivityThread.main(ActivityThread.Java:5039)
at Java.lang.reflect.Method.invokeNative(Native Method)
at Java.lang.reflect.Method.invoke(Method.Java:511)
at com.Android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.Java:793)
at com.Android.internal.os.ZygoteInit.main(ZygoteInit.Java:560)
at dalvik.system.NativeStart.main(Native Method)
Caused by: Java.lang.NoClassDefFoundError: com.example.mapdemo.BasicMapActivity
at com.example.mapdemo.MainActivity.<clinit>(MainActivity.Java:97)
... 15 more
Quelqu'un a-t-il une idée de la façon de résoudre ceci ou de ce que je pourrais mal faire?
Suivez la feuille de berceau très, très attentivement:
https://docs.google.com/document/pub?id=19nQzvKP-CVLd7_VrpwnHfl-AE9fjbJySowONZZtNHzw
En particulier, je pense que vous devez:
J'ai trouvé que cette deuxième étape était nécessaire car je rencontrais exactement la même erreur que vous lorsque vous essayez d'utiliser le code exemple. La première étape était nécessaire pour éviter une NoClassDefFoundError
dans com.google.Android.gms.R$styleable
dans mon projet réel.
Je devais également effectuer une construction propre et désinstaller l'application du périphérique (d'une tentative de test précédente) avant que l'exemple de code ne fonctionne.
Suivez le code d’échantillon suivant de Google.
Passez à la section "4" et suivez les instructions ci-dessous:
Copiez le formulaire google-play-services.jar:
"Android-sdk-folder\extras\google\google_play_services\libproject\google-play-services_lib\libs"
dans le dossier "libs" -> cliquez avec le bouton droit de la souris sur ce fichier dans le dossier -> Chemin de construction -> Ajouter au chemin de construction.
Copiez le formulaire Android-support-v4.jar:
"Android-sdk-folder\extras\Android\support\v4"
dans le dossier "libs" -> cliquez avec le bouton droit de la souris sur ce fichier dans le dossier -> Chemin de construction -> Ajouter au chemin de construction.
Où "Android-sdk-folder" ressemble généralement à: "C:\Utilisateurs\Nom_utilisateur\Android-sdks"
J'ai eu le même problème, j'ai fait ce qui suit pour résoudre le problème.
L'ordre dans lequel ils ont été listés était d'abord "src", puis "gen", je les change, de sorte que le dossier "gen" soit construit avant le "src"
ALORS "Vérifier" chacun des éléments énumérés
voir: NoClassDefFoundError pour le code dans une bibliothèque Java sur Android
Cela est dû à beaucoup de confusion sur la manière d'importer des projets. Les docs https://developers.google.com/maps/documentation/Android/intro#sample_code Indiquent que vous ne devez pas sélectionner "Copier les projets dans l'espace de travail" à aucun moment et pour obtenir les exemples. c'est ce que vous devez respecter. Ne sélectionnez pas cette option pour les services de lecture et les échantillons, laissez-les là où ils se trouvent.
Après avoir importé les deux, vérifiez les points suivants:
Essayez le même exemple de code dans le nouvel espace de travail.
Même si vous pouvez copier et coller les exemples de projet de carte et de projet google play services-lib (/ extras/google/google_play_services/libproject/google-play-services_lib,) et les coller dans le nouvel espace de travail.
J'ai fait face au même problème et je n'ai pas pu résoudre. Enfin, j'ai pris le dossier des exemples de projets d'une autre machine, je l'ai copié dans la mienne et chargé le nouveau projet que j'ai pris de l'autre machine. Alors tout fonctionne bien. J'ai essayé de suivre le problème en comparant 2 exemples de projets mais je n'ai pas pu. Quoi qu'il en soit, les nouveaux exemples de projets que j'ai pris sur l'autre machine fonctionnent bien.
J'ai eu à peu près le même problème… .. Le fichier 'import-summary.txt' avait la réponse… .. Dans mon cas, j'avais importé le projet Eclipse dans un chemin avec un espace dans le chemin. Cela pose un problème avec l'assistant . Nouveau chemin créé. Projet ré-importé. Puis Build/Rebuild Project .. Pas de problèmes.