Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Usa MapLibre strumenti e librerie con Amazon Location
Uno degli strumenti più importanti per creare applicazioni interattive con Amazon Location è MapLibre. MapLibre
Nota
Per utilizzare qualsiasi aspetto di Amazon Location, installa il AWS SDK per la lingua che desideri utilizzare.
-
Mappe
Per visualizzare le mappe nella tua applicazione, è necessario un motore di rendering delle mappe che utilizzi i dati forniti da Amazon Location e disegni sullo schermo. I motori di rendering delle mappe forniscono anche funzionalità per ingrandire e ingrandire la mappa o per aggiungere marcatori, puntine e altre annotazioni alla mappa.
Amazon Location Service consiglia di eseguire il rendering delle mappe utilizzando il motore di MapLibre
rendering. MapLibre GL JS è un motore per la visualizzazione di mappe JavaScript, mentre MapLibre Native fornisce mappe per iOS o Android. MapLibre dispone anche di un ecosistema di plug-in per estendere le funzionalità di base. Per ulteriori informazioni, visita https://maplibre. org/maplibre-gl-js-docs/plugins
/. -
Ricerca luoghi
Per semplificare la creazione di un'interfaccia utente di ricerca, puoi utilizzare il MapLibre geocodificatore
per il web (le applicazioni Android possono utilizzare il plug-in Android Places ). Usa la libreria di geocodificatori Amazon Location for Maplibre
per semplificare il processo di utilizzo di Amazon Location nelle applicazioni. amazon-location-for-maplibre-gl-geocoder
JavaScript -
Percorsi
Per visualizzare i percorsi sulla mappa, usa MapLibrele indicazioni stradali
. -
Geofence e tracker
MapLibre non dispone di rendering o strumenti specifici per i geofence e il tracciamento, ma puoi utilizzare la funzionalità di rendering e i plug-in
per mostrare i geofence e i dispositivi tracciati sulla mappa. I dispositivi monitorati possono utilizzare MQTTo inviare manualmente gli aggiornamenti ad Amazon Location Service. È possibile rispondere agli eventi Geofence utilizzando. AWS Lambda
Sono disponibili molte librerie open source per fornire funzionalità aggiuntive per Amazon Location Service, ad esempio Turf
Molte librerie utilizzano dati in formato Geo JSON
Plugin Amazon Location MapLibre Geocoder
Il plug-in di MapLibre geocodifica Amazon Location è progettato per semplificare l'integrazione della funzionalità di Amazon Location nelle tue JavaScript applicazioni, quando lavori con il rendering di mappe e la geocodifica utilizzando la libreria. maplibre-gl-geocoder
- Installazione
Puoi installare il plug-in di MapLibre geocodifica Amazon Location da NPM utilizzare con i moduli, con questo comando:
npm install @aws/amazon-location-for-maplibre-gl-geocoder
Puoi importarlo in un HTML file per utilizzarlo direttamente nel browser, con uno script:
<script src="https://www.unpkg.com/@aws/amazon-location-for-maplibre-gl-geocoder@1">/script<
- Utilizzo con il modulo
Questo codice configura una mappa Maplibre GL JavaScript con funzionalità di geocodifica di Amazon Location. Utilizza l'autenticazione tramite Amazon Cognito Identity Pool per accedere alle risorse di Amazon Location. La mappa viene renderizzata con uno stile e delle coordinate centrali specificati e consente di cercare luoghi sulla mappa.
// Import MapLibre GL JS import maplibregl from "maplibre-gl"; // Import from the AWS JavaScript SDK V3 import { LocationClient } from "@aws-sdk/client-location"; // Import the utility functions import { withIdentityPoolId } from "@aws/amazon-location-utilities-auth-helper"; // Import the AmazonLocationWithMaplibreGeocoder import { buildAmazonLocationMaplibreGeocoder, AmazonLocationMaplibreGeocoder } from "@aws/amazon-location-for-maplibre-gl-geocoder" const identityPoolId = "
Identity Pool ID
"; const mapName = "Map Name
"; const region = "Region
"; // region containing the Amazon Location resource const placeIndex = "PlaceIndexName
" // Name of your places resource in your AWS Account. // Create an authentication helper instance using credentials from Amazon Cognito const authHelper = await withIdentityPoolId("Identity Pool ID
"); const client = new LocationClient({ region: "Region
", // Region containing Amazon Location resources ...authHelper.getLocationClientConfig(), // Configures the client to use credentials obtained via Amazon Cognito }); // Render the map const map = new maplibregl.Map({ container: "map", center: [-123.115898, 49.295868], zoom: 10, style: `https://maps.geo.${region}.amazonaws.com/maps/v0/maps/${mapName}/style-descriptor`, ...authHelper.getMapAuthenticationOptions(), }); // Gets an instance of the AmazonLocationMaplibreGeocoder Object. const amazonLocationMaplibreGeocoder = buildAmazonLocationMaplibreGeocoder(client, placeIndex, {enableAll: true}); // Now we can add the Geocoder to the map. map.addControl(amazonLocationMaplibreGeocoder.getPlacesGeocoder());- Utilizzo con un browser
-
Questo esempio utilizza Amazon Location Client per effettuare una richiesta di autenticazione tramite Amazon Cognito.
Nota
Alcuni di questi esempi utilizzano Amazon Location Client. Amazon Location Client si basa su AWS SDKfor JavaScript V3
e consente di effettuare chiamate ad Amazon Location tramite uno script a cui si fa riferimento in un HTML file. Includi quanto segue in un HTML file:
< Import the Amazon Location With Maplibre Geocoder> <script src="https://www.unpkg.com/@aws/amazon-location-with-maplibre-geocoder@1"></script> <Import the Amazon Location Client> <script src="https://www.unpkg.com/@aws/amazon-location-client@1"></script> <!Import the utility library> <script src="https://www.unpkg.com/@aws/amazon-location-utilities-auth-helper@1"></script>
Includi quanto segue in un JavaScript file:
const identityPoolId = "
Identity Pool ID
"; const mapName = "Map Name
"; const region = "Region
"; // region containing Amazon Location resource // Create an authentication helper instance using credentials from Amazon Cognito const authHelper = await amazonLocationAuthHelper.withIdentityPoolId(identityPoolId); // Render the map const map = new maplibregl.Map({ container: "map", center: [-123.115898, 49.295868], zoom: 10, style: `https://maps.geo.${region}.amazonaws.com/maps/v0/maps/${mapName}/style-descriptor`, ...authHelper.getMapAuthenticationOptions(), }); // Initialize the AmazonLocationMaplibreGeocoder object const amazonLocationMaplibreGeocoderObject = amazonLocationMaplibreGeocoder.buildAmazonLocationMaplibreGeocoder(client, placesName, {enableAll: true}); // Use the AmazonLocationWithMaplibreGeocoder object to add a geocoder to the map. map.addControl(amazonLocationMaplibreGeocoderObject.getPlacesGeocoder());
Di seguito sono elencate le funzioni e i comandi utilizzati nel plug-in di MapLibre geocodifica Amazon Location:
buildAmazonLocationMaplibreGeocoder
Questa classe crea un'istanza di
AmazonLocationMaplibreGeocder
che è il punto di ingresso per tutte le altre chiamate:const amazonLocationMaplibreGeocoder = buildAmazonLocationMaplibreGeocoder(client, placesIndex, {enableAll: true});
getPlacesGeocoder
Restituisce un IControl oggetto pronto all'uso che può essere aggiunto direttamente a una mappa.
const geocoder = getPlacesGeocoder(); // Initialize map let map = await initializeMap(); // Add the geocoder to the map. map.addControl(geocoder);