2017-01-11 5 views
0

Ich versuche, CLRegion zu verwenden, um als das vom Benutzer ausgewählte Endziel zu markieren, damit die App den Benutzer auffordert, sobald sie das Ziel erreicht haben.Gibt es eine Möglichkeit, CLRegion zu verfallen, wenn es nicht innerhalb einer bestimmten Zeit erreicht wird?

Das Problem ist, dass wenn der Benutzer das Endziel plottet und nicht tatsächlich die Region erreicht. Die Region wird für immer da sein! (Bis zu einem schönen Tag, werden sie die Nachricht aus heiterem Himmel aufgefordert, wenn sie endlich erreicht.)

Ich kann nichts über den Ablauf im Internet finden? Kann mich bitte jemand aufklären?

+1

Es gibt nichts "eingebaut" um damit umzugehen. Sie müssen Ihre Regionen und ein geeignetes Ablaufdatum im Auge behalten und die Region selbst entfernen, wenn das Datum erreicht ist. – Paulw11

Antwort

1

Nicht sicher, welches Problem Sie versuchen zu lösen. Wenn die Region nach einem bestimmten Datum/Zeitpunkt nicht gültig ist, überprüfen Sie einfach den Ablauf, wenn der Geofence schließlich erreicht wird, und verbreiten Sie das Ereignis nicht bis zur Benutzeroberfläche.

Beachten Sie, dass Sie keine Laufzeitvariablen zum Verfolgen von Verfällen verwenden können, da Ihre App möglicherweise zwischen dem Aktivieren der Region und dem tatsächlichen Auftreffen mehrmals gestartet wird. Die schnelle und schmutzige Lösung würde den Ablaufzeitstempel direkt in die Regions-ID einbeziehen. Aber höchstwahrscheinlich müssen Sie eine Art persistenten Speicher verwenden, um alle Informationen zu einer Region zu speichern.

Verwandte Themen