none
localizar el dispositivo usando geocode en wp7? RRS feed

  • Pregunta

  • Buenas, queria saber si alguien tiene alguna idea de como se usa geocode para localizar un dispositivo.

    Alguna referencia de como hacerlo? Gracias

    jueves, 10 de enero de 2013 21:55

Todas las respuestas

  • Buenas!

    ¿Puedes dar más información? ¿Qué es lo que necesitas hacer exactamente? Quieres obtener las coordenadas GPS del dispositivo donde se está ejecutando la app? Si es eso, puedes usar la clase GeoCoordinateWatcher:

    public void GetCoordinates()
    {
        GeoCoordinateWatcher gcw; 
        if (gcw == null) 
            gcw = new GeoCoordinateWatcher();
        gcw.PositionChanged += this.gcw_PositionChanged;
        gcw.Start();
    }
    private void gcw_PositionChanged(object s, GeoPositionChangedEventArgs<GeoCoordinate> e)
    {
        var location = e.Position.Location;
        var latitude = location.Latitude;
        var longitude = location.Longitude;
    }
    Espero que te sirva, un saludo.

    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter

    sábado, 12 de enero de 2013 10:21
    Moderador
  • Hola buenas, gracias por responder. Sí eso es exactamente lo que quiero, lo que pasa que estoy usando el emulador de Miscrosoft visual studio 2010 express for windows phone, y no se si el gps puede funcionar realmente con el emulador... He probado varios codigos que he encontrado y el tuyo tambien pero...

    Como hago para que esas coordenadas se visualicen en el mapa que he añadido a mi interfaz?

    Un saludo

    sábado, 12 de enero de 2013 13:01
  • Hola Dreiss

    En el emulador, en la barra de iconos que tienes a la derecha que te permiten cerrarlo, rotarlo, etc.., el último botón son dos flechas (>>) si le das, te aparecerán las herramientas extendidas, en la segunda tienes un mapa sobre el que al pulsar, se envían esas coordenadas al emulador como si fuese un GPS real.

    Un saludo!


    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter

    domingo, 13 de enero de 2013 9:57
    Moderador
  • Buenas tardes Josue,

    Ya lo tengo, el problema que me da ahora es que me recoge las coordenadas de microsoft(Latitude 47.644833 Longitude -122.141197), que supongo que serán las que por defecto devuelve el simulador. No entiendo porque no me recoge las coordenadas reales ya que yo estoy en Alicante.

    Estoy usando microsoft visual studio 2010 Profesional Version del Framework  4.0.30319 SP1Rel y el sdk de windows phone 7.1. pero el proyecto esta creado para windows phone 7.0. Si lo necesitaras en la próxima respuesta te adjunto el código.

    Un saludo 

    domingo, 13 de enero de 2013 17:16
  • Hola!

    ¿Si haces click en cualquier otro punto del mapa, no te llegan las nuevas coordenadas?

    Si quieres pásame el código y le doy un vistazo en cuanto pueda.

    Un saludo!


    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter

    martes, 15 de enero de 2013 4:48
    Moderador
  • Buenos días,

    he encontrado cual puede ser el problema, es como si el sensor de localizacion no funcionara, ya que cuando pongo esto: MessageBox.Show(watcher.Status.ToString()); me dice que no hay datos.

    He instalado el geolocater en windows 7 pero tampoco funciona. Mi código es el siguiente:

                       

    public MainPage()
            {
                InitializeComponent();
                watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.High);

                watcher.PositionChanged += new EventHandler<GeoPositionChangedEventArgs<GeoCoordinate>>(watcher_PositionChanged);

                watcher.MovementThreshold = 20;

                watcher.Start();

            }

    void watcher_PositionChanged(object sender, GeoPositionChangedEventArgs<GeoCoordinate> e)
            {
                    latitudeText.Text = "Latitude: " + e.Position.Location.Latitude.ToString();

                    longitudeText.Text = "Longitude: " + e.Position.Location.Longitude.ToString();

            }



    miércoles, 16 de enero de 2013 7:56
  • Buenas!

    Creo que el problema puede ser ficticio, me explico. En el emulador de Windows Phone 8 puede fallar la geolocalización (no le llegan datos) si no indicamos la propiedad DesiredAccuracy de GeoCoordinateWatcher o GeoLocator a High para forzar el uso del gps.

    Prueba a ver si con eso se arregla!


    MCTS - .NET 4.0 Windows Applications
    MCTS - .NET 4.0 Data Access
    MCTS - .NET 4.0 Service Communication Applications
    MCPD - .NET 4.0 Windows Developer
    Visita mi Blog en Geeks.ms
    Sigueme en Twitter

    miércoles, 16 de enero de 2013 8:10
    Moderador
  • Buenas Josue,

    El emulador que estoy usando es para windows phone 7 y 7.5 ya que tengo windows 7 y necesito crear la aplicacion para windows phone 7. Tengo el sdk 7.1.

    En cuanto a la propiedad DesiredAccuary ya la tengo puesta en el codigo a High.

    watcher = new GeoCoordinateWatcher(GeoPositionAccuracy.High);

    Saludos

    miércoles, 16 de enero de 2013 10:16