Um Geofences für das Senden von Kampagnen zu verwenden, müssen Sie Zugriff auf das Feature "Interactions" haben.
In diesem Artikel erfahren Developer, wie sie das Geolocation Tracking einrichten und damit Marketern ermöglichen, Geofences zu konfigurieren.
Inhalt
- Anforderungen
- Location-Berechtigungen
- Geolocation-Funktion aktivieren
- Geolocation-Funktion deaktivieren
- Überprüfen, ob die Geolocation-Funktion aktiviert ist
- setEventHandler verwenden
- Alternative für die Anfrage zur Location-Tracking-Berechtigung
Ressourcen
Konfiguration des iOS SDK
Es wird dringend empfohlen, für das Geofence-Management in der App ausschließlich das Emarsys SDK zu verwenden. Wenn Sie zwei oder mehr Geofencing-Dienste in einer App verwenden, kann das auf Ebene des Betriebssystems zu Konflikten zwischen den verschiedenen Geofences-Sätzen und damit zu Inkonsistenzen führen.
1. Anforderungen
Um das Geofencing unterstützen zu können, sollte die SDK-Version 2.5.0 oder höher sein.
2. Location-Berechtigungen
Um für die App Zugriff auf die Location-Dienste des Geräts anzufordern, muss die Datei Info.plist um Folgendes erweitert werden:
... <key>NSLocationAlwaysAndWhenInUseUsageDescription</key> <string>AlwaysUsage is a must have for region monitoring (or some description of your choice)</string> <key>NSLocationWhenInUseUsageDescription</key> <string>AlwaysUsage is a must have for region monitoring (or some description of your choice)</string>
Beim Testen der App stellen Sie bitte sicher, dass der Kontakt aufgefordert wird, der App Zugriff auf die Geolocation zu erteilen.
3. Geolocation-Funktion aktivieren
Um die Geolocation-Funktion zu aktivieren, verwenden Sie die Methode enable
:
Objective-C
[Emarsys.geofence enableWithcompletionBlock:^(NSError *error) { if (error) { NSLog(error); } }];
Swift
Emarsys.geofence.enable { error in if let error = error { print("Error: \(error.localizedDescription)") } }
4. Geolocation-Funktion deaktivieren
Um die Geolocation-Funktion zu deaktivieren, verwenden Sie die Methode disable
:
Objective-C
[Emarsys.geofence disable];
Swift
Emarsys.geofence.disable()
5. Überprüfen, ob die Geolocation-Funktion aktiviert ist
Um zu überprüfen, ob die Geolocation-Funktion aktiviert ist, verwenden Sie die Methode isEnabled
:
Objective-C
[Emarsys.geofence isEnabled];
Swift
Emarsys.geofence.isEnabled()
6. setEventHandler verwenden
Um auf ein von einem Geofence getriggertes Event zu reagieren, können Sie mit der Methode setEventHandler
eine Registrierung dafür vornehmen. Der eventHandler ist ein Callback für ein Geofence-Event.
Objective-C
[Emarsys.geofence setEventHandler:<eventHandler: id<EMSEventHandler>>];
Swift
Emarsys.geofence.eventHandler = <eventHandler: EMSEventHandler>
7. Alternative für die Anfrage zur Location-Tracking-Berechtigung
Die Methode requestAlwaysAuthorization
ist eine Alternative, die für die Anfrage zur Location-Tracking-Berechtigung verwendet werden kann. Wenn die App bereits Berechtigungen angefordert hat, ist ihre Verwendung nicht erforderlich.
Objective-C
[Emarsys.geofence requestAlwaysAuthorization];
Swift
Emarsys.geofence.requestAlwaysAuthorization()