iphone signifikantes Standort-Ereignis, das nicht mit dem Zellenwechsel zusammenhängt

9

Ich habe den signifikanten Event Location Manager auf ios verwendet, aber es scheint, dass es nicht auf einer Zellenänderung wie beansprucht basiert.

Ich habe eine einfache Anwendung verwendet, die ein signifikantes Standortereignis verwendet, aber ich konnte keine wiederholbare, konsistente oder sensible Antwort vom ios sdk erhalten.

Ich habe die Route (blaue Linie), die Zelle Türme (Ortsmarke) und ein 1000m2 Gitter (blaues Quadrat) auf der Karte unten gezeichnet. Karte mit Route

Die Route war 5000 m entfernt.

Ich fuhr es dreimal.

  • test1. erhielt 2 sig events
  • test2. keine
  • test3. erhielt 1 sig events

bevor Sie sich beschweren, dass mein Test zu klein ist, habe ich andere Test-Routen seit Tagen beobachtet und alle zeigen die inkonsistente Form.

Ich hatte erwartet, dass das sig-Ereignis auf dem Wechsel des Mobilfunkmastens basiert. Also habe ich eine Jailbreak-App namens "signal" verwendet, um zu identifizieren, was die aktive Zelle ist. (NB. Es ist überraschend, welche Zelle aktiv ist. Nicht, was ich erwarten würde.)

Von der Überwachung der "Signal" -Anwendung wechselten die Zellen ungefähr 6-7 Mal von dem, was ich bemerkte.

Ich habe noch keine 6-7 sig-Veranstaltungen erhalten. Daher kann ich keine Korrelation zwischen Zellwechsel und signifikanten Ereignissen sehen.

Ich habe die folgenden Fragen

  • Q1. Was ist der signifikante Ereignisauslöser?
  • Q2. Warum ist das Ergebnis unzuverlässig / inkonsistent?
  • Q3. Wie kann ich erreichen, dass meine App ein konsistentes und sensibles signifikantes Ereignis zu 500m erhält?

Dies ist der Code, der in der Test App ausgeführt wird

%Vor%

-lp

    
lpic 16.06.2011, 22:54
quelle

3 Antworten

4

Wichtige Standortänderungen werden von iOS bestimmt und Sie können nichts tun, um ihre Granularität direkt zu ändern. Beachten Sie, dass nur in iOS 4 nur die Positionen der Mobilfunkmasten verwendet werden. Zukünftige Versionen des Betriebssystems werden dies verbessern.

Aber als Workaround könnten Sie normale CoreLocation Positionsupdates einschalten, wenn die App durch eine signifikante Standortänderung geweckt / gestartet wird. Sobald Sie das perfekte Ergebnis erzielt haben, deaktivieren Sie die Standortüberwachung erneut, damit die App in den Ruhezustand zurückkehren kann.

    
Cocoanetics 19.06.2011 09:27
quelle
1

Ich habe gerade einen 3-Kilometer-Test im ziemlich zentralen San Francisco mit meiner App gemacht, und habe auch keine signifikanten Änderungen bei den Standort-Ereignissen erhalten. Ich habe einen Schalter in meiner App, um zum normalen Polling mit kCLLocationAccuracyHundredMeters zu wechseln und habe 40+ Events über die gleiche Distanz.

Wenn ich die Gefühle verschiedener anderer Antworten hier und anderswo befolge, halte ich mich bis zu iOS 5 auf Significant Change zurück. Ich denke, das Beste, was man jetzt tun kann, ist eine eigene Geschäftslogik, um den alten Core Location Weg abzufragen und die Frequenz der Ratsche im Laufe der Zeit (oder so) nach und nach batteriefreundlich.

Sieht so aus, als wäre in iOS 4 Significant Change besser geeignet, um zu erkennen, an welchem ​​Ende Ihrer Reise Sie sind, als an welcher Stelle (oder gar Postleitzahl) Sie sich befinden.

    
Eric Goldberg 11.07.2011 06:39
quelle
0

Ich bin mir nicht sicher, ob Sie sich das schon angesehen haben - aber die WWDC 2010-Sitzung 115 (Verwendung des Core-Standorts in iOS) könnte Ihnen eine bessere Vorstellung von der signifikanten Standortänderungs-API geben.

    
Abizern 19.06.2011 09:47
quelle

Tags und Links