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 :

GeoLocalisation Google maps


Sujet :

API standards et tierces Android

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2011
    Messages
    140
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 140
    Par défaut GeoLocalisation Google maps
    Salut à tous


    je veux ajouter un markeur de position à ma carte,mais je n'arrive pas à le faire malgre que j'ai ajouter des markeurs de position des sites,mais un markeur pour me localiser nn.

    voilà les codes

    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
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    import java.io.IOException;
    import java.util.List;
    import java.util.Locale;
     
    import com.android.map.HelloItemizedOverlay;
    import com.android.map.R;
     
    import com.google.android.maps.GeoPoint;
    import com.google.android.maps.MapActivity;
    import com.google.android.maps.MapController;
    import com.google.android.maps.MapView;
    import com.google.android.maps.Overlay;
    import com.google.android.maps.OverlayItem;
     
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.content.Context;
    import android.content.DialogInterface;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.graphics.Canvas;
    import android.graphics.Point;
    import android.graphics.drawable.Drawable;
    import android.location.Address;
    import android.location.Geocoder;
    import android.location.Location;
    import android.location.LocationListener;
    import android.location.LocationManager;
    import android.net.ConnectivityManager;
    import android.net.NetworkInfo;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.KeyEvent;
    import android.view.Menu;
    import android.view.MotionEvent;
    import android.widget.LinearLayout;
    import android.widget.TextView;
    import android.widget.Toast;
     
    public class HelloGoogleMapActivity extends MapActivity implements LocationListener{
     
     
    	private MapView    mapView;
    	private MapController mc;
    	private LocationManager lm;	
    	private MotionEvent event;	
    	private double      lat = 0;
    	private double      lng = 0;
    	 LinearLayout linearLayout;
     
    	 Location location;
     
     
     
    	TextView tv;
    	HelloItemizedOverlay itemizedoverlay;
     
        /** Called when the activity is first created. */
    	  @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main1);
     
            MapView mapView = (MapView) findViewById(R.id.mapView);
            mapView.setBuiltInZoomControls(true);
     
            //
     
     
            mc = mapView.getController();     
            mc.setZoom(17);
     
     
     
     
     
            List<Overlay> mapOverlays = mapView.getOverlays();
            Drawable drawable = this.getResources().getDrawable(R.drawable.pink);
            HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable,this);
     
     
     
     
     
            GeoPoint point = new GeoPoint((int)(36.854128 * 1E6),(int)(10.334809* 1E6));        
            OverlayItem overlayitem = new OverlayItem(point, "Anthonin de Carthage", "Les thermes d’Antonin, situés à Carthage, sont le plus vaste ensemble thermal romain construit sur le sol africain. Ils constituent aussi le seul bâtiment thermal de Carthage dont il subsiste quelques vestiges, en dépit de la prédation féroce qui a sévi sur le site archéologique et dépouillé le monument de ses matériaux.L’édifice des thermes portant le nom d’Antonin le Pieux est édifié sur le bord de mer, après un grand incendie ayant ravagé la cité au iie siècle. La construction est datée précisément d’une période située entre 145 et 162 ; elle est proche de la plupart des grands édifices de la capitale du proconsul d’Afrique, représentant du pouvoir dans la province, dont il reste quelques vestiges comme l’amphithéâtre, le théâtre et l’odéon...");  
           // mc.setCenter(point); 
            mc.setCenter(point); 
     
            GeoPoint point1 = new GeoPoint((int)(36.853372* 1E6),(int)(10.32423* 1E6));
            OverlayItem overlayitem1 = new OverlayItem(point1, "Musée National de Carthage", "Le musée national de Carthage est un musée archéologique situé sur la colline de Byrsa au cœur de la ville de Carthage.Le musée est fondé en 1875 dans les locaux du séminaire des Pères blancs. Son nom est d’abord Musée Saint-Louis jusqu’en 1899 puis Musée Lavigerie jusqu’en 1956 ; ce dernier nom est celui du fondateur de cet ordre missionnaire, le cardinal Charles Martial Lavigerie2.Il accueille dans un premier temps le produit des fouilles effectuées par les Pères blancs, en particulier celles effectuées par le père Delattre. L’annexe du couvent des Pères blancs était utilisée de prime abord pour recevoir le produit des fouilles des nécropoles du site archéologique : fouilles de la colline Saint-Louis mais aussi de Douimès, de la colline de Junon, de la colline Sainte-Monique et aussi des basiliques chrétiennes carthaginoises... ");
           // mc.setCenter(point1);
     
            GeoPoint point2 = new GeoPoint((int)(36.85248* 1E6),(int)(10.323694* 1E6));
            OverlayItem overlayitem2 = new OverlayItem(point2, "Byrsa","Byrsa, présente dès les premiers jours de la cité punique selon les sources écrites qui nous sont parvenue, a vraisemblablement été le lieu de la citadelle qui fut le dernier réduit lors de la Troisième Guerre punique. A l'époque romaine le lieu fut occupé par de vastes constructions publiques suite à un réaménagement considérable de l'espace naturel qui fut adapté au projet urbanistique. Après un long abandon, le site a été réoccupé sur le plateau sommital par de nouvelles constructions à finalité religieuse, dans le contexte colonial du xixe siècle, principalement une cathédrale et un séminaire des Pères Blancs, dont l'objectif était apostolique et archéologique. Ce séminaire abrita le produit des fouilles effectuées à Carthage et abrite toujours le Musée national de Carthage... ");
            //mc.setCenter(point2);
     
            GeoPoint point3 = new GeoPoint((int)(36.857768* 1E6),(int)(10.329444* 1E6));
            OverlayItem overlayitem3 = new OverlayItem(point3, "Amphithéatre de Carthage", "L'amphithéâtre de Carthage est un amphithéâtre romain construit au premier siècle dans la ville de Carthage, reconstruite par Jules César (Colonia Julia Karthago) et qui devient la capitale de la province romaine d'Afrique. La prédation qui a sévi sur le site archéologique fait que seule subsiste l'arène, alors que l'édifice faisait l'admiration de voyageurs, y compris au Moyen Âge.C'est l'un des trois amphithéâtres africains, avec ceux d'El Jem et de Thapsus, à être construit sur un terrain plat, sans adossement à une colline 1.L'amphithéâtre de Carthage est construit à la fin du premier siècle ou au début du iie siècle, à l'ouest de la colline de Byrsa. Une inscription datée atteste qu'il est en service en 133-139. Il est agrandi au cours du troisième siècle...");
            //mc.setCenter(point3);
     
            GeoPoint point4 = new GeoPoint((int)(36.858128* 1E6),(int)(10.331526* 1E6));
            OverlayItem overlayitem4 = new OverlayItem(point4, "Villas Romaines", "Il s’agit d’un quartier qui regroupe le plus grand nombre de vestiges d’habitations patriciennes mises au jour dans l’antique métropole. Si le tracé, très net et souligné par le trait puissant d’une portion de rue pavée, donne une idée précise de l’aménagement topographique d’une cité romaine, les vestiges subsistants ne donnent qu’une vague idée de l’agrément et du luxe de ces résidences qui s’étageaient en pente douce jusqu’au bord de mer.Une maison, dite « la villa de la volière » , la mieux conservée du site, a été restaurée pour nous restituer un intérieur romain d’Afrique : des chambres précédées d’un préau soutenu par des colonnes autour d’une cour centrale agrémentée d’un jardinet et pavée de mosaïques.De la terrasse, s’offre une superbe vue sur la baie de Tunis...");
            //mc.setCenter(point4);
     
            GeoPoint point5 = new GeoPoint((int)(36.854025* 1E6),(int)(10.323071* 1E6));
            OverlayItem overlayitem5 = new OverlayItem(point5, "Acropolium", "L’Acropolium est une institution culturelle et touristique.Il est installé dans le bâtiment de l'ancienne cathédrale Saint-Louis qui fut construite en 1884.Ce monument se dresse au sommet de la colline de Byrsa, haut lieu de la Carthage punique, sur l'emplacement du capitole romain, là où Didon a fondé Karthadash (la ville nouvelle).L'Acropolium est voisin du Musée archéologique où sont exposées les collections puniques et romaines découvertes sur le site.Ce monument a été restauré et mis en valeur en 1995, dans le cadre du plan d'aménagement culturel et touristique du Parc National Carthage Sidi Bou Saïd.De style byzantin mauresque, il est soutenu de colonnes de marbre aux chapiteaux dorés, de plafonds de bois peint et de vitraux.");
            //mc.setCenter(point5);
     
            GeoPoint point6 = new GeoPoint((int)(35.296379* 1E6),(int)(10.706831* 1E6));
            OverlayItem overlayitem6 = new OverlayItem(point6, "Amphithéâtre d’El Jem", "Troisième amphithéâtre du monde antique (après celui de Rome et de Capoue), le grand amphithéâtre d’El Jem pouvait accueillir 27 mille spectateurs. L’historien Michel Zéraffa écrit : ' Ici, lorsqu’un gladiateur était blessé, la foule devait hurler plus fort qu’à Rome '.L’édifice fut élevée entre la fin du 2ème siècle et le début du 3ème et les pierres qui servirent à sa construction acheminées d’une carrière qui se situait à plus de 30 Km. Son tracé est elliptique, le grand axe mesurant 148 mètres et le périmètre 427 mètres.Bien qu’ébréché, le grand amphithéâtre d’El Jem est l’un des monuments historiques les plus majestueux.");
            //mc.setCenter(point5);
     
     
     
          //  GeoPoint point8 = new GeoPoint((int)(36.843087* 1E6),(int)(10.325539* 1E6));
          //  OverlayItem overlayitem8 = new OverlayItem(point8, "Site archéologique de Carthage"," Fondée dès le IXe siècle av. J.-C. sur le golfe de Tunis, Carthage établit à partir du VIe siècle un empire commercial s'étendant à une grande partie du monde méditerranéen et fut le siège d'une brillante civilisation. Au cours des longues guerres puniques, elle occupa des territoires de Rome, mais celle-ci la détruisit finalement en 146 av. J.-C. Une seconde Carthage, romaine celle-là, fut alors fondée sur ses ruines.");
     
     
     
            itemizedoverlay.addOverlay(overlayitem);
            itemizedoverlay.addOverlay(overlayitem1);
            itemizedoverlay.addOverlay(overlayitem2);
            itemizedoverlay.addOverlay(overlayitem3);
            itemizedoverlay.addOverlay(overlayitem4);
            itemizedoverlay.addOverlay(overlayitem5);
            itemizedoverlay.addOverlay(overlayitem6);
            //itemizedoverlay.addOverlay(overlayitem7);
          //  itemizedoverlay.addOverlay(overlayitem8);
     
     
     
            Drawable drawable1 = this.getResources().getDrawable(R.drawable.pink);
            HelloItemizedOverlay itemizedoverlay1 = new HelloItemizedOverlay(drawable1);
           //lat = location.getLatitude();
    		// lng = location.getLongitude();	 
     
    		/* GeoPoint p = new GeoPoint((int) (38.854025 * 1E6), (int) (10.323071 * 1E6));
    		 OverlayItem overlayitem8 = new OverlayItem(p, "je suis là"," Fondée dès le IXe siècle av. J.-C. sur le golfe de Tunis, Carthage établit à partir du VIe siècle un empire commercial s'étendant à une grande partie du monde méditerranéen et fut le siège d'une brillante civilisation. Au cours des longues guerres puniques, elle occupa des territoires de Rome, mais celle-ci la détruisit finalement en 146 av. J.-C. Une seconde Carthage, romaine celle-là, fut alors fondée sur ses ruines.");
    		 itemizedoverlay1.addOverlay(overlayitem8);  
    		  mapOverlays.add(itemizedoverlay1);
    		  mc.setCenter(p); */
     
            mapOverlays.add(itemizedoverlay);
     
            mapView.setSatellite(true);
     
     
     
            lm = (LocationManager) this.getSystemService(LOCATION_SERVICE);
            lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 10000, 0, this);
            lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 10000, 0, this);
     
     
            mapView.setClickable(true);
     
     
     
        }
     
     
    	/*public boolean onTouchEvent(MotionEvent event, MapView mapView) 
        {   
            //---when user lifts his finger---
        	
        	 
            if (event.getActionIndex()== 1) { 
            	
            	
                GeoPoint point = mapView.getProjection().fromPixels((int) event.getX(),(int) event.getY());
                    Toast.makeText(getBaseContext(), point.getLatitudeE6() / 1E6 + "," + 
                            point.getLongitudeE6() /1E6  ,Toast.LENGTH_SHORT).show();
            	
            }                            
            return false;
        }*/
     
     
     
     
     
     
     
    	@Override
    	protected boolean isRouteDisplayed() {
    		// TODO Auto-generated method stub
    		return false;
    	}
     
    	@Override
    	public boolean onKeyDown(int keyCode, KeyEvent event)
    	{
    	  if (keyCode == KeyEvent.KEYCODE_S)
    	  {
    	    mapView.setSatellite(!mapView.isSatellite());
    	    return true;
    	  }
    	  return super.onKeyDown(keyCode, event);
    	}
     
    	@Override
    	public void onLocationChanged(Location location) {
    		// TODO Auto-generated method stub
     
    		lat = location.getLatitude();
    		 lng = location.getLongitude();
    		 Toast.makeText(getBaseContext(),
    		 "Je suis là",
    		 Toast.LENGTH_SHORT).show();
    		 GeoPoint p = new GeoPoint((int) (lat * 1E6), (int) (lng * 1E6));
     
     
    		 OverlayItem overlayitem9 = new OverlayItem(p, "je suis là", null);
    		 Drawable dra = this.getResources().getDrawable(R.drawable.pink);
    	        HelloItemizedOverlay itemizedoverlay1 = new HelloItemizedOverlay(dra);
    	        List<Overlay> mapOverlays = mapView.getOverlays();
    		itemizedoverlay1.addOverlay(overlayitem9);
    		 mapOverlays.add(itemizedoverlay1);
    	    //    mc.setCenter(p);      
    		// mc.animateTo(p);
     
     
    	}
     
    	@Override
    	public void onProviderDisabled(String provider) {
    		// TODO Auto-generated method stub
     
    		//
    		// Log.e("GPS", "provider disabled " + provider);
             //tv = new TextView(this);
             //tv.setText(tv.getText()+"\nprovider disabled " + arg0);
             //setContentView(tv);
     
    	}
     
    	@Override
    	public void onProviderEnabled(String provider) {
    		// TODO Auto-generated method stub
     
    		// Log.e("GPS", "provider enabled " + provider);
             //tv = new TextView(this);
           //  tv.setText(tv.getText()+"\nprovider enabled " + provider);
             //setContentView(tv);
     
     
     
    	}
     
    	@Override
    	public void onStatusChanged(String provider, int status, Bundle extras) {
    		// TODO Auto-generated method stub
     
    	}
     
     
     
     
     
    }

    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
    import java.util.ArrayList;
     
    import android.app.AlertDialog;
    import android.content.Context;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.graphics.drawable.Drawable;
    import android.location.LocationListener;
    import android.net.Uri;
    import android.os.Bundle;
    import android.view.MotionEvent;
    import android.widget.TextView;
    import android.widget.Toast;
     
    import com.google.android.maps.GeoPoint;
    import com.google.android.maps.ItemizedOverlay;
    import com.google.android.maps.MapView;
    import com.google.android.maps.OverlayItem;
     
    public class HelloItemizedOverlay extends ItemizedOverlay {
     
    	private ArrayList<OverlayItem> mOverlays = new ArrayList<OverlayItem>();
    	private Context mContext;
    	String hello;
    	String titre;
    	private Drawable defaultMarker;
     
    	public HelloItemizedOverlay(Drawable defaultMarker) {
    		super(boundCenterBottom(defaultMarker));
    		// TODO Auto-generated constructor stub
    	}
     
     
     
    	public HelloItemizedOverlay(Drawable defaultMarker, Context context) {
    		 // super(defaultMarker);
    		super(boundCenterBottom(defaultMarker));
    		   mContext = context;
    		  // HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(defaultMarker, mContext);
     
    		}
     
    	@Override
    	protected OverlayItem createItem(int i) {
    		// TODO Auto-generated method stub
    		 return mOverlays.get(i);
    	}
     
    	@Override
    	public int size() {
    		// TODO Auto-generated method stub
    		return mOverlays.size();
    	}
    	public void addOverlay(OverlayItem overlay) {
    	    mOverlays.add(overlay);
    	    populate();
    	}
    @Override
    	protected boolean onTap(int index) {
    	  OverlayItem item = mOverlays.get(index);
    	  AlertDialog.Builder dialog = new AlertDialog.Builder(mContext);
    	  dialog.setTitle(item.getTitle());
    	 // dialog.setMessage(item.getSnippet());  
     
    	  titre=item.getTitle();
    	  hello=item.getSnippet();
     dialog.show();
    	  return true;
    	}
    }

    merci de m'aider

  2. #2
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Bonjour,

    Est ce que déjà tu arrives a rentrer dans la procédure onLocationChanged ?

  3. #3
    Membre averti
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2012
    Messages : 19
    Par défaut geo point
    Salut,

    Je suis un etudiant et je viens de developer une application android.
    Je viens de voir votre sujet sur le forum, est ce que vous pouver m'aider, concernant le geopoint où vous avez trouvé les coordonnées.
    Je viens de les chercher sur internet et je n'ai pas trouvé par exemple les coordonnées des hotels de la tunisie.

    Merci d'avance

Discussions similaires

  1. [HTML 4.0] geolocalisation/google maps - a droite des recherches google
    Par artenis dans le forum Balisage (X)HTML et validation W3C
    Réponses: 0
    Dernier message: 06/02/2012, 21h12
  2. Geoportail utilise Google map pour geolocaliser
    Par ceweb dans le forum IGN API Géoportail
    Réponses: 8
    Dernier message: 16/01/2011, 12h22
  3. [Google Maps] Erreur Ajax sur la geolocalisation
    Par JeffPalmier dans le forum APIs Google
    Réponses: 1
    Dernier message: 04/08/2010, 16h15
  4. Geolocalisation sur une image type google map
    Par James_ dans le forum LabVIEW
    Réponses: 3
    Dernier message: 09/02/2010, 09h52
  5. Geolocalisation à l'aide de google maps
    Par tlafont dans le forum APIs Google
    Réponses: 2
    Dernier message: 04/02/2007, 10h56

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