Show Menu
ARGOMENTI×

Geolocalizzazione e punti di interesse

Le geolocalità permette di misurare i dati relativi alla posizione utilizzando latitudine e longitudine e punti di interesse predefiniti nelle app iOS.
Ogni chiamata trackLocation invia i seguenti dati:
  • Latitudine, longitudine e posizione in un punto di interesse (POI) definito in Adobe Mobile Services.
    Questi dati vengono passati alle variabili della soluzione mobile a scopo di reportistica automatica.
  • Distanza dal centro e precisione passate come dati contestuali.
    Queste variabili non vengono acquisite automaticamente. Devi mappare queste variabili di dati contestuali, seguendo le istruzioni disponibili nella sezione Invio di dati aggiuntivi di seguito.

Aggiornamenti POI dinamici

A partire dalla versione 4.2, i punti di interesse (POI) sono definiti nell'interfaccia di Adobe Mobile e sincronizzati dinamicamente con il file di configurazione dell'app. Tale sincronizzazione richiede un'impostazione analytics.poi nel file ADBMobile.json :
“analytics.poi”: “https://assets.adobedtm.com/…/yourfile.json”,

Per ulteriori informazioni, vedi File di configurazione ADBMobile JSON .
Se non è configurata, devi scaricare e aggiungere all'app una versione aggiornata del file ADBMobile.json . Per ulteriori informazioni e istruzioni, consulta Scaricare l’SDK e gli strumenti di prova in Prima di iniziare .

Tracciare geolocalizzazioni e POI

  1. Aggiungi la libreria al tuo progetto e implementa le funzioni di ciclo di vita (lifecycle).
    Per ulteriori informazioni, consulta Aggiungere l’SDK e il file di configurazione al progetto in Implementazione e ciclo di vita di base .
  2. Importa la libreria:
    #import "ADBMobile.h"
    
    
  3. Invoca trackLocation per tenere traccia della posizione corrente:
    CLLocation *currentLocation = location; 
    [ADBMobile trackLocation: currentLocation data: nil]; 
    
    
    Puoi invocare trackLocation in qualsiasi momento.
    Per determinare la posizione passata alla chiamata trackLocation , usa Ottenere la posizione dell'utente .
Inoltre, se la posizione è determinata entro il raggio definito per un POI, con l'hit a.loc.poi viene inviata una variabile di dati di contesto trackLocation che viene inserita come POI nei rapporti sulla posizione. Viene inoltre inviata una variabile di dati contestuali a.loc.dist , con la distanza (in metri) dalle coordinate definite.

Inviare dati aggiuntivi

Oltre ai dati sulla posizione, con ogni chiamata di tracciamento della posizione puoi inviare anche dati di contesto aggiuntivi:
NSMutableDictionary *contextData = [NSMutableDictionary dictionary]; 
[contextData setObject:@"GPS" forKey:@"myapp.location.LocationSource"]; 
[ADBMobile trackLocation: currentLocation data:contextData];

I valori dei dati contestuali devono essere mappati su variabili personalizzate:

Dati contestuali sulla posizione

I dati di latitudine e longitudine vengono inviati utilizzando in totale sei parametri di dati di contesto: tre diversi parametri di dati contestuali per ciascuno, ognuno dei quali rappresenta un diverso livello di precisione.
Ad esempio, le coordinate "lat = 40.93231, lon = -111.93152" rappresentano una posizione con precisione di 1 m. Questa viene divisa in base al livello di precisione nelle seguenti variabili:
  • a.loc.lat.a = 040,9
  • a.loc.lat.b = 32
  • a.loc.lat.c = 31
  • a.loc.lon.a = -111,9
  • a.loc.lon.b = 31
  • a.loc.lon.c = 52
Alcuni livelli di precisione potrebbe essere riportati come "00", a seconda dell'accuratezza della posizione corrente. Ad esempio, se la posizione ha un livello di precisione di 100 m, a.loc.lat.c e a.loc.lon.c saranno pari a "00".

Informazioni aggiuntive

Considerazioni da ricordare:
  • Una richiesta trackLocation invia l'equivalente di una chiamata trackAction .
  • I POI non vengono passati in normali chiamate trackAction e trackState ; per tenere traccia dei POI devi quindi usare una chiamata trackLocation .
  • La chiamata trackLocation deve essere invocata ogni volta che sia necessario per tenere traccia di posizione e POI.
    Consigliamo di invocare trackLocation all'avvio dell'app e quindi in base alle esigenze, secondo i requisiti dell'applicazione.
  • I POI vengono compilati solo dopo essere stati definiti nel file di configurazione dell'app.
    Non vengono applicati a chiamate trackLocation storiche precedentemente inviate.
  • Le chiamate trackLocation supportano l'invio di dati di contesto aggiuntivi, in modo analogo alle chiamate trackAction .
  • Quando i diametri di due POI si sovrappongono, viene usato il primo POI che contiene la posizione corrente.
    Se devi usare dei POI che si sovrappongono, elencali in ordine dal più dettagliato al meno dettagliato, per fare sì che venga trasmesso quello più dettagliato.