IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API standards et tierces Android Discussion :

Intégration de Google Maps


Sujet :

API standards et tierces Android

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 90
    Points : 69
    Points
    69
    Par défaut Intégration de Google Maps
    Bonjour à tous,

    Actuellement en train de développer une application pour smartphones, j'ai besoin d'y intégrer Google Maps. J'ai suivis les informations données dans mon bouquin Android (L'art du développement Android aux éditions Pearson). L'application fonctionne bien, sauf que la carte n'apparait pas à l'écran, j'ai juste le damier.

    Et dans Logcat j'ai l'erreur suivante :
    Nom : Sans titre.png
Affichages : 101
Taille : 1,9 Ko

    Le layout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context="applications.py.meetbook.FindPeopleActivity" >
        <com.google.android.maps.MapView android:id="@+id/map"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:apiKey="Ma clé"
            android:clickable="true" />
    </RelativeLayout>
    Le Manifest :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="applications.py.meetbook"
        android:versionCode="1"
        android:versionName="1.0" >
    	<uses-permission
    	    android:name="android.permission.INTERNET" />
    	<uses-permission
    	    android:name="android.permission.ACCESS_FINE_LOCATION" />
        <uses-sdk
            android:minSdkVersion="14"
            android:targetSdkVersion="19" />
     
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
            <uses-library android:name="com.google.android.maps" />
            <activity
                android:name=".MainActivity"
                android:label="@string/app_name" >
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
     
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity
                android:name=".FindPeopleActivity"
                android:label="@string/title_activity_find_people" >
            </activity>
            <activity
                android:name=".EditProfileActivity"
                android:label="@string/title_activity_edit_profile" >
            </activity>
        </application>
     
    </manifest>
    La classe Java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    package applications.py.meetbook;
     
    import com.google.android.maps.MapActivity;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuItem;
     
    public class FindPeopleActivity extends MapActivity {
     
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_find_people);
    	}
     
    	@Override
    	public boolean onCreateOptionsMenu(Menu menu) {
    		// Inflate the menu; this adds items to the action bar if it is present.
    		getMenuInflater().inflate(R.menu.find_people, menu);
    		return true;
    	}
     
    	@Override
    	public boolean onOptionsItemSelected(MenuItem item) {
    		// Handle action bar item clicks here. The action bar will
    		// automatically handle clicks on the Home/Up button, so long
    		// as you specify a parent activity in AndroidManifest.xml.
    		int id = item.getItemId();
    		if (id == R.id.action_settings) {
    			return true;
    		}
    		return super.onOptionsItemSelected(item);
    	}
     
    	@Override
    	protected boolean isRouteDisplayed() {
    		// TODO Auto-generated method stub
    		return false;
    	}
    }

    Si quelqu'un pouvait m'aiguiller ça serait vraiment sympa !

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    La GMap v1 est dépréciée depuis 2012. Il n'est plus possible de la mettre en place depuis mi-2013. Il faut passer à la GMap v2 qui se trouve dans les Google Play Services.
    Ressources :
    - https://developers.google.com/maps/d.../hello-mapview (le gros "deprecated").
    - https://developers.google.com/maps/d...android_api_v2
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 90
    Points : 69
    Points
    69
    Par défaut
    Ah super j'ai acheter un bouquin qui n'est plus à jour, pf... :/

    Bon sinon j'ai donc modifier en suivant les infos mises par Google pour la V2, mais ça fonctionne encore moins maintenant, mon application ne se lance même plus sur mon téléphone, à la place j'ai une grosse erreur sur Eclipse :
    Nom : Sans titre.png
Affichages : 97
Taille : 43,4 Ko

    Suivis d'un message me disant qu'il y a un dépassement de mémoire puis Eclipse se ferme :/

    Voilà mes modifications faites,

    Activité :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    package applications.py.meetbook;
     
    import com.google.android.maps.MapActivity;
     
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuItem;
     
    public class FindPeopleActivity extends Activity {
     
    	@Override
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_find_people);
    	}
     
    	@Override
    	public boolean onCreateOptionsMenu(Menu menu) {
    		// Inflate the menu; this adds items to the action bar if it is present.
    		getMenuInflater().inflate(R.menu.find_people, menu);
    		return true;
    	}
     
    	@Override
    	public boolean onOptionsItemSelected(MenuItem item) {
    		// Handle action bar item clicks here. The action bar will
    		// automatically handle clicks on the Home/Up button, so long
    		// as you specify a parent activity in AndroidManifest.xml.
    		int id = item.getItemId();
    		if (id == R.id.action_settings) {
    			return true;
    		}
    		return super.onOptionsItemSelected(item);
    	}
    }
    Layout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?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"
        class="com.google.android.gms.maps.MapFragment" />
    Manifest :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="applications.py.meetbook"
        android:versionCode="1"
        android:versionName="1.0" >
     
        <uses-permission android:name="android.permission.INTERNET"/>
    	<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    	<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    	<!-- The following two permissions are not required to use
    	     Google Maps Android API v2, but are recommended. -->
    	<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    	<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
     
    	<uses-feature
            android:glEsVersion="0x00020000"
            android:required="true"/>
     
        <uses-sdk
            android:minSdkVersion="14"
            android:targetSdkVersion="19" />
     
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
            <activity
                android:name=".MainActivity"
                android:label="@string/app_name" >
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
     
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity
                android:name=".FindPeopleActivity"
                android:label="@string/title_activity_find_people" >
            </activity>
            <activity
                android:name=".EditProfileActivity"
                android:label="@string/title_activity_edit_profile" >
            </activity>
            <meta-data
    		    android:name="com.google.android.maps.v2.API_KEY"
    		    android:value="Clé"/>
        </application>
     
    </manifest>
    Et je n'ai pas oublier d'ajouter les Google Play Services à mon application après les avoir importer dans Eclipse:
    Nom : Sans titre2.png
Affichages : 134
Taille : 57,8 Ko

  4. #4
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Problème d'Eclipse. Ne l'utilisant plus depuis très longtemps, je botte en touche.
    Je ne peux que te conseiller d'augmenter la mémoire allouée pour celui-ci.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    90
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 90
    Points : 69
    Points
    69
    Par défaut
    Effectivement en augmentant la mémoire d'Eclipse mon application se lance bien sur mon téléphone, par contre lorsque je souhaite afficher la carte mon application crash et je me retrouve avec les erreurs suivante sur Logcat. J'ai oublier quelque chose d'important ?
    Nom : Sans titre.png
Affichages : 134
Taille : 152,1 Ko

    EDIT : En relisant le message d'erreur, j'ai ajouter les ligne suivante dans le manifest et maintenant ça fonctionne !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />
    Merci pour l'aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Intégration de Google Maps dans votre application Android
    Par michel.di dans le forum API standards et tierces
    Réponses: 22
    Dernier message: 07/10/2011, 20h02
  2. Intégration de Google Maps dans un site en J2EE
    Par Dark_TeToN dans le forum Java EE
    Réponses: 0
    Dernier message: 19/09/2011, 11h00
  3. [CS5] intégration de google maps
    Par razen dans le forum Intégration
    Réponses: 0
    Dernier message: 26/09/2010, 11h02
  4. Intégration de Google Maps avec Zend
    Par flagodzki dans le forum Zend Framework
    Réponses: 2
    Dernier message: 17/08/2009, 16h45
  5. intégration de Google map dans un winform
    Par hervino dans le forum Windows Forms
    Réponses: 1
    Dernier message: 12/04/2009, 20h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo