Show Menu
ARGOMENTI×

Geolocalizzazione e punti di interesse

La geolocalità consente di misurare i dati sulla posizione mediante latitudine e longitudine e punti di interesse predefiniti nelle app Android.
Ciascuna chiamata trackLocation invia le informazioni seguenti:
  • Latitudine, longitudine e posizione in un punto di interesse (POI) che è definito nell'interfaccia utente di 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 seguente.

Aggiornamenti POI dinamici

A partire della versione 4.2, i POI sono definiti nell'interfaccia di Adobe Mobile e sincronizzati in modo dinamico con il file di configurazione dell'app. Questa sincronizzazione richiede un’impostazione analytics.poi nel File di configurazione ADBMobile JSON :
“analytics.poi”: “https://assets.adobedtm.com/…/yourfile.json”,

Se questa configurazione non è presente, devi scaricare una versione aggiornata del file ADBMobile.json e aggiungerla all'app. Per ulteriori informazioni, consulta Scaricare l’SDK e gli strumenti di prova .

Tracciamento di geolocalizzazione 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 IntelliJ IDEA o Eclipse in Implementazione e ciclo di vita di base .
  2. Importa la libreria:
    import com.adobe.mobile.*;
    
    
  3. Invoca trackLocation per tenere traccia della posizione corrente:
    Location currentLocation = new Location("my location here"); 
    Analytics.trackLocation(currentLocation, null);
    
    
    Puoi invocare trackLocation in qualsiasi momento.
    Puoi usare le strategie di posizione per determinare la posizione passata alla chiamata trackLocation . Per ulteriori informazioni, consulta Strategie posizione Android .
Inoltre, se la posizione è determinata essere nel raggio di un POI definito, una variabile di dati di contesto a.loc.poi viene inviata con l'hit trackLocation e indicata come POI nei rapporti di dettaglio della posizione . Viene inoltre inviata una variabile di dati contestuali a.loc.dist , con la distanza (in metri) dalle coordinate definite.

Invio di dati aggiuntivi

Oltre ai dati sulla posizione, con ogni chiamata di tracciamento della posizione puoi inviare anche dati di contesto aggiuntivi:
HashMap<String, Object> locationContextData = new HashMap<String, Object>(); 
locationContextData.put("myapp.location.LocationSource", "GPS"); 
 
Location currentLocation = new Location("my location here"); 
Analytics.trackLocation(currentLocation, locationContextData);

I valori dei dati contestuali devono essere mappati su variabili personalizzate nell'interfaccia utente di Adobe Mobile Services:

Dati contestuali sulla posizione

Latitudine e longitudine vengono inviati usando tre diversi parametri di dati contestuali, dove ciascun parametro rappresenta un diverso livello di precisione, per un totale di sei parametri di dati contestuali.
Ad esempio, le coordinate lat = 40.93231, long = -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 possono apparire come 00 in base alla precisione della posizione attuale. 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 .
Considerazioni da ricordare:
  • Una richiesta trackLocation invia l'equivalente di una chiamata trackAction .
  • I POI non sono passati nell'ambito di chiamate trackAction e trackState tipiche, pertanto devi usare una chiamata trackLocation per tracciare i POI.
  • La chiamata trackLocation deve essere invocata ogni volta che sia necessario per tenere traccia di posizione e POI.
    Consigliamo di chiamare trackLocation all'avvio dell'app e quindi quando necessario, in base ai requisiti dell'app.
  • I POI sono popolati solo dopo essere stati definiti nel file di configurazione dell'app.
    I POI non vengono applicati a chiamate trackLocation storiche inviate in precedenza.
  • 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.