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 :

Perte de carte Google Maps


Sujet :

API standards et tierces Android

  1. #1
    Membre du Club
    Inscrit en
    Février 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 127
    Points : 66
    Points
    66
    Par défaut Perte de carte Google Maps
    Bonjour

    J’utlise google Maps V2

    Voila le code :

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
    public class MapSites extends FragmentActivity {
     
    	private double Latitude = 36.766667, Longitude = 3.05;
     
    	private int Zoom = 18, ZoomMin = 5;
     
    	private LatLng latlng;
     
    	private GoogleMap map;
    	private MarkerOptions myMarker;
    	private Marker marker;	
     
        	@Override
        	public void onCreate(Bundle savedInstanceState) {
        		super.onCreate(savedInstanceState);
     
        		setContentView(R.layout.map);
     
    		SupportMapFragment fragment = new SupportMapFragment();
            	getSupportFragmentManager().beginTransaction().add(android.R.id.content, fragment).commit();
     
            	// Getting status
            	int status = GooglePlayServicesUtil.isGooglePlayServicesAvailable(getBaseContext());
     
            	// Showing status
            	if(status==ConnectionResult.SUCCESS)
            	{
                	SupportMapFragment supportMapFragment = (SupportMapFragment)
                      getSupportFragmentManager().findFragmentById(R.id.mapsite);
     
                	// Getting a reference to the map
                	map = supportMapFragment.getMap();
     
                	if (map != null){
     
                		map.setMapType(GoogleMap.MAP_TYPE_NORMAL);
                		map.setMyLocationEnabled(true);
     
                		map.getUiSettings().setMyLocationButtonEnabled(true);
                		map.getUiSettings().setZoomGesturesEnabled(true);
                		map.getUiSettings().setZoomControlsEnabled(true);
                    	map.getUiSettings().setCompassEnabled(true);
                    	map.getUiSettings().setAllGesturesEnabled(true);
     
    			latlng = new LatLng(Latitude, Longitude);
     
    			marker = map.addMarker(new MarkerOptions()
    				    .title(getString(R.string.Youarehere))		    
    				    .position(latlng)
    				    .icon(BitmapDescriptorFactory.fromResource(R.drawable.marker)));		
     
    			marker.setPosition(latlng);
     
    			//centrer et zoomer la carte
    			map.moveCamera(CameraUpdateFactory.newLatLngZoom(latlng, Zoom));
     
    			// Zoom in, animating the camera.
    			map.animateCamera(CameraUpdateFactory.zoomTo(ZoomMin), 2000, null);
     
                	}
     
            }
            else{
     
               int requestCode = 10;
               Dialog dialog = GooglePlayServicesUtil.getErrorDialog(status, this, requestCode);
               dialog.show();
            }    	
        }   
     
    }
    Mais j’ai un petit problème après quelque minute de mise en vielle, je perte ma carte.

    Voila les screenshot



    Après quelque minute de mise en vielle



    J'ai pas trouvé la solution à ce problème,

    merci d'avance pour votre aide

    bonne journée.

    a+

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Points : 968
    Points
    968
    Par défaut
    Est-ce que tu effectues des opérations spéciales en dehors du onCreate ?
    Il faut savoir que lorsque le téléphone passe en vieille ou change d'application, ton application se met en pause.
    Les callbacks onPause, onStop sont appelés. Puis onStart et onResume lorsque ton application revient au premier plan.

    Que contiennent ces méthodes dans ton projet ?

  3. #3
    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
    Par "je perds ma carte", tu veux dire "je perds ma position et mes marqueurs ?"

    Pour moi, au vu du code fourni, tu as deux instances de carte superposées.
    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

  4. #4
    Membre du Club
    Inscrit en
    Février 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 127
    Points : 66
    Points
    66
    Par défaut
    Citation Envoyé par Simon MARQUIS Voir le message
    Est-ce que tu effectues des opérations spéciales en dehors du onCreate ?
    Il faut savoir que lorsque le téléphone passe en vieille ou change d'application, ton application se met en pause.
    Les callbacks onPause, onStop sont appelés. Puis onStart et onResume lorsque ton application revient au premier plan.

    Que contiennent ces méthodes dans ton projet ?
    bonjour,
    merci pour votre réponse

    je fait rien de spéciales dans onPause, onStop, onStart, onResume

    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
     
     
    	@Override
    	public void onStart() {
    	    super.onStart();
     
    	    Log.v("Radio", "Start");	    
    	}
     
    	@Override
    	public void onStop() {
    	    super.onStop();
     
    	    Log.v("Radio", "Stop");
    	}
     
    	@Override
    	public void onResume() {
    	    super.onResume();
     
    	    Log.v("Radio", "Resume");		
    	}		
     
    	@Override
    	public void onPause() {
    	    super.onPause();
     
    	    Log.v("Radio", "Pause");		
    	}
    j'ai essayer de rajoute le code de onCreate dans onResume, mais le même problème.

    merci pour l'aide
    bonne journée

  5. #5
    Membre du Club
    Inscrit en
    Février 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 127
    Points : 66
    Points
    66
    Par défaut
    Citation Envoyé par Hizin Voir le message
    Par "je perds ma carte", tu veux dire "je perds ma position et mes marqueurs ?"

    Pour moi, au vu du code fourni, tu as deux instances de carte superposées.
    bonjour,
    merci pour votre réponse,

    oui c'est ça je perds ma position et mes marqueurs, et aussi le zoom.

    comment deux instances de carte superposées, peut être c'est çà le problème, mais moi je ne vois pas ça dans mon code.

    voila le map.xml

    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
     
     
    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout 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"
        tools:context=".MapSites" >
     
    	<fragment xmlns:map="http://schemas.android.com/apk/res-auto"
            		android:id="@+id/mapsite"        		
            		android:layout_width="match_parent"
            		android:layout_height="match_parent"
    		android:layout_weight="1"
            		android:scrollbars="vertical"
    		android:name="com.google.android.gms.maps.SupportMapFragment"
    		map:mapType="normal"
    		map:uiCompass="false"
    		map:uiRotateGestures="false"
    		map:uiScrollGestures="false"
    		map:uiTiltGestures="true"
    		map:uiZoomControls="true"
    		map:uiZoomGestures="true"/>
     
    </FrameLayout>
    merci pour l'aide
    bonne journée

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Points : 968
    Points
    968
    Par défaut
    C'est vraiment bizarre.
    Comme l'a remarqué Hizin, (après une lecture plus attentive de ton code) il s'agit certainement de plusieurs cartes qui se superposent.

    Tout d'abord, ces deux lignes posent problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SupportMapFragment fragment = new SupportMapFragment();
            	getSupportFragmentManager().beginTransaction().add(android.R.id.content, fragment).commit();
    Il n'existe pas cet id dans ton layout....

    Ensuite, pourquoi essaies-tu d'ajouter un SupportFragmentMap alors que le système l'instancie automatiquement lorsqu'il est référencé dans le layout ?

  7. #7
    Membre du Club
    Inscrit en
    Février 2005
    Messages
    127
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 127
    Points : 66
    Points
    66
    Par défaut
    Citation Envoyé par Simon MARQUIS Voir le message
    C'est vraiment bizarre.
    Comme l'a remarqué Hizin, (après une lecture plus attentive de ton code) il s'agit certainement de plusieurs cartes qui se superposent.

    Tout d'abord, ces deux lignes posent problème :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SupportMapFragment fragment = new SupportMapFragment();
            	getSupportFragmentManager().beginTransaction().add(android.R.id.content, fragment).commit();
    Il n'existe pas cet id dans ton layout....

    Ensuite, pourquoi essaies-tu d'ajouter un SupportFragmentMap alors que le système l'instancie automatiquement lorsqu'il est référencé dans le layout ?
    bonjour,
    merci pour votre réponse,
    ta raison c'est ça le problème, par ce que j'ai mélangé plusieurs code que j'ai trouve sur le net, et j'ai pas bien nettoyé ce mélange de code

    très gentil de votre part mnt elle marche bien

    j'ai supprimé ces 2 lignes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SupportMapFragment fragment = new SupportMapFragment();
            	getSupportFragmentManager().beginTransaction().add(android.R.id.content, fragment).commit();
    merci pour l'aide
    bonne journée

Discussions similaires

  1. Changer l'apparence du zoom : carte google maps
    Par pyramidesoft dans le forum APIs Google
    Réponses: 1
    Dernier message: 19/06/2009, 16h52
  2. Centrage carte google maps sous IE
    Par arhtur dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 22/05/2009, 10h48
  3. Personnaliser une carte google maps
    Par akara dans le forum Services
    Réponses: 0
    Dernier message: 06/03/2009, 14h01
  4. Pb affichage carte Google Map
    Par Fifilosof dans le forum Général Conception Web
    Réponses: 3
    Dernier message: 13/10/2008, 09h47
  5. Récupérer cartes Google Maps
    Par EmlTakeo dans le forum C++
    Réponses: 2
    Dernier message: 24/10/2007, 20h09

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