web-dev-qa-db-fra.com

Android Studio avec gradle et Google Maps v2

Je suis vraiment coincé ici. Donc, je suis pas à pas tutoriel : mais ça ne marche toujours pas.

J'ai effectué toutes les étapes du didacticiel et j'ai découvert quel nouveau module (GooglePlayServices) ne se trouve pas dans les modules, s'il est ouvert run->edit configurations dans general->module je ne vois pas GooglePlayServices, je suppose que c'est le problème, mais je ne trouve pas ce que je dois faire pour le corriger.

Un jour plus tôt, j'ai essayé la même chose, mais dans ce cas (je ne me souviens pas de ce que j'ai fait) GooglePlayServices dans les modules et je n'ai plus de problème avec cannot resolve symbol 'maps', mais cela ne fonctionne toujours pas, déclenche une erreur Error inflating class fragment

mon activité s'étend FragmentActivity

import Android.os.Bundle;
import Android.support.v4.app.FragmentActivity;

public class MainActivity extends FragmentActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }

}

dans les deux cas build.gradle comme dans le tutoriel:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:0.4'
    }
}
apply plugin: 'Android'

dependencies {
    compile files('libs/Android-support-v4.jar')
    compile project(':GooglePlayServices')
}

Android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 9
        targetSdkVersion 17
    }
}

et settings.gradle:

include ':Roadatus', ':GooglePlayServices'

main.xml:

<?xml version="1.0" encoding="utf-8"?>
<fragment xmlns:Android="http://schemas.Android.com/apk/res/Android"
          Android:id="@+id/map"
          Android:layout_width="match_parent"
          Android:layout_height="match_parent"
          Android:name="com.google.Android.gms.maps.SupportMapFragment"/>
17
Naitro

essayez d'éviter d'inclure des services google play entiers, cela vous obligera à activer le multidex en raison de la taille du package. au lieu de cela, incluez-les individuellement, par exemple:

compile 'com.google.Android.gms:play-services-maps:8.3.0'

si vous souhaitez inclure d'autres services, veuillez vous référer ici:

https://developers.google.com/Android/guides/setup (faites défiler vers le bas)

28
James Tan

J'ai essayé et échoué de nombreux tutoriels à ce sujet, mais j'ai finalement trouvé une solution simple qui semble fonctionner.

Je viens d'installer Android Studio 0.2.3 sur mon mac, et ce sont les étapes qui m'ont fait afficher un fragment de cartes sur un nouveau modèle de projet hello world:

1) Cliquez sur le bouton Gestionnaire de SDK dans la barre d'outils dans Android Studio.

2) Sous "Extras", recherchez "Google play services" et téléchargez-le.

3) dans votre fichier build.gradle dans votre répertoire src, ajoutez cette ligne aux dépendances:

compile 'com.google.Android.gms:play-services:3.1.36'

4) commandez et installez votre clé API en suivant ce tutoriel: https://developers.google.com/maps/documentation/Android/start#the_google_maps_api_key

5) Ajoutez le fragment à votre mise en page XML:

<fragment xmlns:Android="http://schemas.Android.com/apk/res/Android"
          Android:id="@+id/map"
          Android:layout_width="match_parent"
          Android:layout_height="match_parent"
          Android:name="com.google.Android.gms.maps.MapFragment"/>

6) vous devriez maintenant pouvoir exécuter votre projet sur votre appareil.

16
monopoint

Dans le gestionnaire SDK, installez-les à partir d'Extras:

  • Référentiel de support Android
  • Référentiel Google
  • Services Google Play

Alors, build.gradle devrait ressembler à ceci:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:0.5.0'
    }
}
apply plugin: 'Android'

dependencies {
    //compile files('libs/Android-support-v4.jar')
    compile 'com.google.Android.gms:play-services:3.1.36'

}

Android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 14
    }
}

J'ai également dû commenter cette ligne dans build.gradle:

//compile files('libs/Android-support-v4.jar')

Plus d'informations à ce sujet: https://plus.google.com/+AndroidDevelopers/posts/4Yhpn6p9icf

1
Igor Benko