Guia do desenvolvedor

Local Navigation

Especificar informações do servidor PDE

Antes de começar:

Você deverá ter a ID de usuário, a senha, o endereço IP e o número de porta que o provedor de serviços sem fio utilizará para seu servidor PDE.

  1. Importe as classes necessárias.
    import net.rim.device.api.gps.*;
    import javax.microedition.location.*;
  2. Crie uma classe e um construtor.
    public class handleGPS
    {
        static GPSThread gpsThread;
        public handleGPS()
        {
        }
    }
  3. No construtor, crie e inicie uma instância da classe Thread.
    gpsThread = new GPSThread();
    gpsThread.start();
  4. Na classe, crie uma classe estática privada que estende Thread e cria um método run().
    private static class GPSThread extends Thread
    {
       public void run()
       {
       }
    }
  5. No método run() da classe privada, invoque isGPSModeAvailable() fornecendo GPS_MODE_ASSIST como parâmetro para determinar se o modo assistido está disponível no aparelho BlackBerry. Invoque isPDEInfoRequired() para determinar se você deve especificar as informações do servidor de PDE. Se for necessário fornecer informações do servidor de PDE, crie uma instância da classe BlackBerryCriteria fornecendo GPS_MODE_ASSIST como um parâmetro para o construtor.
    if ( !GPSInfo.isGPSModeAvailable(GPSInfo.GPS_MODE_ASSIST) ||
        !GPSSettings.isPDEInfoRequired(GPSInfo.GPS_MODE_ASSIST))
        return;
    BlackBerryCriteria myCriteria = new BlackBerryCriteria
      (GPSInfo.GPS_MODE_ASSIST);
  6. No método run() da classe privada, crie um bloco try/catch. No bloco, associe uma instância da classe BlackBerryCriteria com um objeto BlackBerryLocationProvider. Crie e especifique o ID de usuário, senha e objetos String de endereço de IP e o ID de porta. Combine os objetos String em um único String. Invoque setPDEInfo() para especificar o endereço de IP do servidor de PDE e o número de porta do aparelho BlackBerry.
    try
    {
        BlackBerryLocationProvider myProvider =
          (BlackBerryLocationProvider)
          LocationProvider.getInstance(myCriteria);
        String user = "UserID";
        String pass = "Password";
        String ip = "127.0.0.1";
        int port = 0;
        String str = ip + ";" + user + ";" + pass;
        GPSSettings.setPDEInfo(str, port);
        try
        {
            BlackBerryLocation myLocation =
              (BlackBerryLocation)myProvider.getLocation(10);
        }
        catch ( InterruptedException iex )
        {}
        catch ( LocationException lex )
        {}
    }
    catch ( LocationException lex )
    {}
    return;

Estas informações foram úteis? Gostaríamos de receber seus comentários.