Dans ce tuto je vais utiliser le capteur GPS de mon téléphone pour afficher ma position, longitude et latitude.
D’abord mon fichier XML pour l’affichage de mes informations
Pour utiliser mon capteur gps j’utilise la class LocationManager et LocationListener l’ecouteur (listener) des actions du gps. Dans ma méthode onCreate je crée mes deux objets objgps et objlistener.
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//---utilisation de la class LocationManager pour le gps---
objgps = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
//*************ecouteur ou listener*********************
objlistener = new Myobjlistener();
objgps.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
0,
0,
objlistener);
//**variable qui pointe sur mes champs d'affichage*************
mTxtViewlong = (TextView) findViewById(R.id.textlong);
mTxtViewlat = (TextView) findViewById(R.id.textlat);
}
Dans ma class Myobjlistener qui est une implementation de la class LocationListener s’affiche la longitude et la lattidute dans mes TextView
private class Myobjlistener implements LocationListener
{
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
}
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
public void onStatusChanged(String provider, int status,
Bundle extras) {
// TODO Auto-generated method stub
}
public void onLocationChanged(Location location) {
//affichage des valeurs dans la les zone de saisie
mTxtViewlat.setText(" "+location.getLatitude());
mTxtViewlong.setText(" "+location.getLongitude());
}
}
}
Il ne faut pas oublier dans le fichier AndroidManifest.xml de donner l’autorisation à l’application d’utiliser le capteur GPS avec ces deux lignes
<uses-permission android:name=”android.permission.ACCESS_FINE_LOCATION”></uses-permission>
<uses-permission android:name=”android.permission.ACCESS_MOCK_LOCATION”></uses-permission>
;
code complet
package org.gps;
import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.Toast;
public class Gps extends Activity {
private LocationManager objgps;
private LocationListener objlistener;
private TextView mTxtViewlong;
private TextView mTxtViewlat;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//---utilisation de la class LocationManager pour le gps---
objgps = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
//*************ecouteur ou listener*********************
objlistener = new Myobjlistener();
objgps.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
0,
0,
objlistener);
//**variable qui pointe sur mes champs d'affichage*************
mTxtViewlong = (TextView) findViewById(R.id.textlong);
mTxtViewlat = (TextView) findViewById(R.id.textlat);
}
private class Myobjlistener implements LocationListener
{
public void onProviderDisabled(String provider) {
// TODO Auto-generated method stub
}
public void onProviderEnabled(String provider) {
// TODO Auto-generated method stub
}
public void onStatusChanged(String provider, int status,
Bundle extras) {
// TODO Auto-generated method stub
}
public void onLocationChanged(Location location) {
//affichage des valeurs dans la les zone de saisie
mTxtViewlat.setText(" "+location.getLatitude());
mTxtViewlong.setText(" "+location.getLongitude());
}
}
}
Il est temps de mettre à profit les tutoriels d’Android France:
Passez à la vitesse supérieure et investissez quelques dizaines d’euros pour acquérir les connaissances qui vous feront gagner de l’argent avec vos applications rendez-vous sur notre boutique Android-france pour ces formations en vidéo