Guide de développement

Local Navigation

Récupérer un fournisseur de positionnement à l'aide de la classe LocationProvider

  1. Importez les classes requises.
    import javax.microedition.location.*;
  2. Créez une classe et un constructeur.
    public class handleGPS
    {
       public handleGPS()
       {
       }
    }
  3. Dans le constructeur, créez une instance de la classe Criteria.
    Criteria myCriteria = new Criteria();
  4. Dans le constructeur, configurez l'objet Criteria objet pour utiliser le mode GPS indiqué. Dans l'échantillon de code suivant, le mode autonome est indiqué en appelant setCostAllowed(false).
    int myMode = 2; // AUTONOMOUS
    switch ( myMode )
    {
       case 0: // CELLSITE
          myCriteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_LOW);
          myCriteria.setHorizontalAccuracy(Criteria.NO_REQUIREMENT);
          myCriteria.setVerticalAccuracy(Criteria.NO_REQUIREMENT);
          myCriteria.setCostAllowed(true);
          break;
       case 1: // ASSIST
          myCriteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_MEDIUM);
          myCriteria.setHorizontalAccuracy(100);
          myCriteria.setVerticalAccuracy(100);
          myCriteria.setCostAllowed(true);
          break;
       case 2: // AUTONOMOUS
          myCriteria.setCostAllowed(false);
          break;
    }
  5. Dans le constructeur, créez un bloc try/catch. Dans le bloc, créez un objet LocationProvider en appelant getInstance().
    try
    {
        LocationProvider myProvider =
            LocationProvider.getInstance(myCriteria);
    }
    catch ( LocationException lex )
    {
        return;
    }

Échantillon de code : récupération d'un fournisseur de positionnement à l'aide de la classe LocationProvider

import javax.microedition.location.*;
public class handleGPS
{
    public handleGPS()
    {
        Criteria myCriteria = new Criteria();
        int myMode = 2; // AUTONOMOUS
        switch ( myMode )
        {
            case 0: // CELLSITE
                myCriteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_LOW);
                myCriteria.setHorizontalAccuracy(Criteria.NO_REQUIREMENT);
                myCriteria.setVerticalAccuracy(Criteria.NO_REQUIREMENT);
                myCriteria.setCostAllowed(true);
                break;
            case 1: // ASSIST
                myCriteria.setPreferredPowerConsumption(Criteria.POWER_USAGE_MEDIUM);
                myCriteria.setHorizontalAccuracy(100);
                myCriteria.setVerticalAccuracy(100);
                myCriteria.setCostAllowed(true);
                break;
            case 2: // AUTONOMOUS
                myCriteria.setCostAllowed(false);
                break;
        }
        try
        {
            LocationProvider myProvider = LocationProvider.getInstance(myCriteria);
        }
        catch ( LocationException lex )
        {
            return;
        }
    }
}

Ces informations vous ont-elles été utiles ? Envoyez-nous vos commentaires.