2017-07-13 7 views
0

J'essaie d'apprendre l'API Google Map à partir de ce tutoriel (https://github.com/googlemaps/android-samples). Cependant, j'ai reçu un message d'erreur lorsque j'ai lancé l'application. ce problème est un problème simple, mais je suis un débutant de l'utilisation du studio Android et Google Map API. donc j'ai une idée pour résoudre ce problème ....L'exemple d'API GoogleMap Android ne fonctionne pas

S'il vous plaît donnez-moi un conseil.

message d'erreur

'Échec de l'exécution de la tâche': l'application: transformClassesWithDexForDebug » com.android.build.api.transform.TransformException: java.util.concurrent.ExecutionException: com.android .dex.DeIndexOverFlowException: ID méthode non [0,0xffff]: 65536

ce que je l'ai fait.

1) télécharger le fichier zip. (https://github.com/googlemaps/android-samples)

2) et l'importation ouvert Android Studio projet de l'utilisation de 'projet d'importation (Eclipse ADT, Gradle, etc ...)'

3) mettre la clé API Google MAP dans le fichier 'gradle.properties de .

4) exécuter

Répondre

1

Vous avez trop de méthodes. Il ne peut y avoir que 65536 méthodes pour dex.

Vous devez inclure multidex

Ajoutez ces lignes dans la construction gradle

android { 

defaultConfig { 
    ... 

    // Enabling multidex support. 
    multiDexEnabled true 
} 
... 
} 

dependencies { 
compile 'com.android.support:multidex:1.0.1' 
} 

également dans votre manifest ajoutez la classe MultiDexApplication de la bibliothèque de support multidex à l'élément d'application

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.example.android.multidex.myapplication"> 
<application 
    ... 
    android:name="android.support.multidex.MultiDexApplication"> 
    ... 
</application> 
</manifest> 
0

Je suppose que vous faites référence à ApiDemos et aux tutoriels sous googlemaps/android-samples

  • ApiDemos utilisant compile 'com.google.android.gms:play-services-maps'
  • tutoriels en utilisant compile 'com.google.android.gms:play-services'

Le second traitera avec tous les services de jeu Apis au lieu d'un particulier. Donc vous faites face au problème de la limite de 65K. Essayez d'utiliser l'API individuelle (comme com.google.android.gms:play-services-maps) pour tous les échantillons sous googlemaps/échantillons android