2010-11-26 10 views
1


Ich entwickle eine Anwendung für iPhone mit iOS 4.2 SDK.
Meine Anwendung muss eine Warnmeldung anzeigen, wenn ein Benutzer eine bestimmte Position (im Umkreis von 400 m) erreicht. Beachten Sie, dass ich diese Warnung auch dann erhalten muss, wenn sich die App im Hintergrund befindet.
Wenn ich den locationManager mit startUpdatingLocation Modus verwende, erhalte ich eine Warnung, wenn die App im Vordergrund ist, aber nicht, wenn sie im Hintergrund ist.
Wenn ich versuche, mit Locationmanagern mit startMonitoringSignificantChanges Modus auszuführen, erhalte ich keine Positionsänderungen im Hintergrund und auch nicht im Vordergrund (dh didUpdateLocation Methode nie aufgerufen wird. Nur einmal in der Anwendung starten)
einige Fakten :
1. Ich aktualisierte info.plist mit UIBackgroundMode mit 'Position' als erstes Element im Array.
2. Ich aktualisierte info.plist UIDeviceCapabilities mit GPS und Location-Services (obwohl es nicht wirklich wichtig ist)
3. Alle oben genannten bezieht sich auf die App auf dem 3GS iPhone-Gerät ausführen.
4. Ich habe diese App auf SDK 4.0 und 4.1 versucht und habe das gleiche Problem.
5. Das Gerät unterstützt die Verwendung von startMonitoringSignificantChanges (Methode des LocationManager bestätigt dies)
6. Wenn ich die App auf dem Gerät überprüfe, bewege ich mich in einem Bereich von ~ 150 Metern. Werden die startMonitoringSignificantChanges didUpdateLocation-Methode mit dieser Art von Bewegung aufrufen?
7. Alle Einstellungen an den Geräten sind eingeschaltet (Roaming, 3G, Wifi, ...)
Bin ich etwas fehlt? irgendwelche Ideen?
Danke,iphone location-Methode startMonitoringSignificantChanges funktioniert nicht

+0

noch nicht ... Hilfe Antwort gefunden haben. Irgendjemand? – ronk

Antwort