2010-06-23 17 views
7

Estoy creando una aplicación que utiliza ubicación-obtener la ubicación en iPhone sólo desde el GPS - no es la red wifi

todo funciona a las mil maravillas, excepto una cosa:

cuando llego a casa mi iPhone se conecta a mi representante red wifi y en lugar de obtener mi ubicación usando el GPS en el teléfono, intenta obtenerlo averiguando dónde está conectada mi red wifi- si apago mi wifi mantiene un punto de ubicación preciso-

tan pronto como mi teléfono está conectado a mi red wifi, comienza a decirme que mi ubicación está a varios kilómetros de mi punto actual.

Me gustaría que mi aplicación no utilizar la red wifi para tratar de conseguir mi ubicación-

hay una manera puedo- a. decir si se ha derivado un punto de ubicación del GPS, por lo que puedo ignorar las ubicaciones derivadas de la red wifi. b. detener los servicios de ubicación saltando a wifi para la ubicación

Respuesta

2

Además de pedirle al usuario que apague su wifi, no hay forma documentada de forzar al administrador de la ubicación a usar el GPS a través de WiFi. Podría ser posible con una API privada, pero eso también haría que te rechacen en la App Store.

+0

hey dave- gracias por esa respuesta- tenía miedo de eso- no pude encontrar nada después de fregar la red -im esperando que alguien tuviera una astuta manera de hacerlo sin el rechazo de la tienda de aplicaciones- puede que tenga que terminar haciendo algún tipo de Cálculo de tiempo/distancia entre puntos para ver si la nueva ubicación es físicamente inviable, pero esa sería una solución bastante pobre. Saludos, dave. – dave

1

Puede establecer cLLocationAccuracy.desiredAccuracy = kCLLocationAccuracyBest y ver si eso lo hace. Debería intentar y limitar el uso del GPS, sin embargo, eso no está garantizado al 100%.

+0

hey jamone- gracias por esa respuesta- sí, lo tengo configurado para el mejor, pero los servicios de ubicación parecen dar preferencia a wifi en gps- cheers, dave. – dave

-5

A-GPS = GPS + triangulación de torre de celda. No hay posicionamiento WI-FI.

+1

hey adrian, gracias por esa respuesta, mi iPhone me da la misma ubicación en casa que mi ipod, y mi ipod no tiene gps o recepción de celular, supongo que mi iphone está tomando la ubicación desde el mismo lugar en el que mi ipod está recibiendo desde ... debería tener en cuenta: no recibo ninguna recepción de teléfono en mi casa (techo de hojalata jajaja) - porras, dave- – dave

+0

El A-GPS solo significa que la señal de la celda puede utilizarse para acelerar el bloqueo del GPS. No afecta la precisión de posición del GPS. Y sí, también se usa la ubicación WiFi. – jamone

+0

@jamone ¿Puedes definir WI-FI? Por favor, mira primero qué significa AGPS y no me digas que el enrutador WiFi de tu hogar puede decirte cuál es tu posición en el iPhone. Y SÍ ... la triangulación celular se usa para hacer un mejor posicionamiento. –

5

Bueno he hecho un poco de juego en torno

encontrado alguna documentación manzana que dice que [location verticalAccuracy] requiere un dispositivo con GPS.

Así que me quedé en el código (abreviada) y en base a la limitada prueba que he hecho, que parece estar haciendo lo que quiero:

if (([location horizontalAccuracy] > 0) && ([location verticalAccuracy] > 0)){ 
    //report location here 
} 

Gracias a todos por sus respuestas.

0

las coordenadas de GPS imprecisas las obtiene el iPhone no solo a través de las redes Wi-Fi o móviles, sino también las coordenadas reales con un nivel de precisión> 100 metros.

Lo que yo uso es poner la línea: if (newLocation.horizontalAccuracy < 0 || newLocation.horizontalAccuracy > 50) return;

como la primera línea en el didUpdateToLocation, para filtrar las coordenadas inexactas.

La 'edad de ubicación' es decir NSTimeInterval locationAge=[locTimestamp timeIntervalSinceNow]; NO me sirve para deshacerme de las coordenadas en caché.

1

La razón por la que utiliza WIFI en casa es porque no hay manera de que pueda ver directamente los satélites del GPS en el espacio, en lugar de no darle ningún dato de ubicación, utiliza la siguiente mejor fuente disponible.

Cuestiones relacionadas