Suite

Géocodage hors ligne et géocodage inversé pour Android

Géocodage hors ligne et géocodage inversé pour Android


Je développe une application Android qui ne peut pas utiliser Internet et doit gérer les cartes et le positionnement.

Télécharger les données OpenStreetMaps est considéré comme une bonne solution pour accéder aux informations cartographiques hors ligne. Cependant, j'ai besoin de quelques algorithmes de base exécutés localement sur le téléphone portable, comme le géocodage et le géocodage inversé.

Est-ce que quelqu'un connaît une bibliothèque pour Android qui peut consommer des données OpenStreetmap hors ligne et fournir un géocodage et un géocodage inversé sur le téléphone portable ?


ArcGIS Runtime SDK pour Android prend en charge le géocodage hors ligne, le géocodage inversé et le routage. L'API est la même pour en ligne et hors ligne, il vous suffit d'initialiser la tâche, par ex.RouteTâche, pour un itinéraire local ou un itinéraire en ligne. La classe abstraite Locator est utilisée pour créer des géocodeurs hors ligne/en ligne.

Voici un exemple de code source SDK à étudier


AFAIK, il n'y a (actuellement) pas de telle bibliothèque https://wiki.openstreetmap.org/wiki/Frameworks


Android : géocodage inversé - getFromLocation

J'essaie d'obtenir une adresse basée sur le long/lat. il semble que quelque chose comme ça devrait fonctionner?

Le problème est que je continue à obtenir : La méthode Geocoder(Locale) n'est pas définie pour le type savemaplocation

Toute aide serait utile. Merci.

Merci, j'ai essayé le contexte, la locale en premier, et cela a échoué et je regardais certains des autres constructeurs (j'en avais vu un qui avait mentionné juste la locale). Quand même,

Cela n'a pas fonctionné, car j'obtiens toujours : La méthode Geocoder(Context, Locale) n'est pas définie pour le type savemaplocation

J'ai : import android.location.Geocoder


Geocoder est une solution de géocodage complète pour Ruby. Avec Rails, il ajoute le géocodage (par rue ou adresse IP), le géocodage inversé (recherche d'adresse de rue en fonction de coordonnées données) et les requêtes de distance. C'est aussi simple que d'appeler le géocodage sur vos objets, puis d'utiliser une portée comme Venue.near("Billings, MT"). Veuillez noter que ce README concerne le HEAD actuel et peut documenter des fonctionnalités non présentes dans la dernière version de gem. Pour cette raison, vous souhaiterez peut-être plutôt consulter le fichier README de votre version particulière.

Inspiré par la liste impressionnante. Cette spécification met en évidence les fonctionnalités (SQL, API de mise en cache d'applications hors ligne ainsi que les événements en ligne/hors ligne, l'état et l'API localStorage) de HTML5 et fournit de brefs didacticiels sur la façon dont ces fonctionnalités peuvent être utilisées pour créer des applications Web qui fonctionnent hors ligne.


Géocodage hors ligne et géocodage inversé pour Android - Systèmes d'information géographique

Osmonde est une bibliothèque Android qui lit les données de carte des rues ouvertes (formats osm.pbf, osm.bz2 et osm.gz, les deux derniers sont essentiellement xml), est écrite sur SQLite et peut être utilisée pour le géocodage hors ligne, etc.

Osmonde est le nom scientifique d'un genre de plantes, c'est une sorte de fougère, qui a été choisie car elle commence par OSM.

  • Essayez d'utiliser la base de données NOSQL, car les données OSM utilisent beaucoup de paires clé-valeur, donc la base de données NOSQL peut être un meilleur choix.
  • Modifiez la méthode d'obtention des divisions administratives dans Address() .

Ajoutez le référentiel JitPack au fichier build.gradle de votre projet :

Instanciez un OsmosisReader.

Définissez les relations d'importation et les données de chemin, si vous n'en avez pas besoin, veuillez ne pas écrire le code suivant. Voir Stockage

Définissez la fréquence de validation, sinon le paramètre par défaut (5 000) sera utilisé. Voir commitFréquence

Définissez le fichier de données OSM ou Uri (android.net.Uri), le contexte et le nom du fichier de base de données, et commencez à lire.

Utilisez reader.read pour obtenir le nombre d'enregistrements OSM lus et reader.insert pour obtenir le nombre d'enregistrements OSM insérés dans la base de données. (Pour la raison de la différence entre eux, veuillez vous référer à commitFrequency )

Utilisez reader.progress pour obtenir la progression estimée actuelle en pourcentage.

Obtenir une liste des bases de données existantes

Utilisez Osmunda(requireContext()).GetDatabaseList() pour obtenir la liste des bases de données importées.

Utilisez Osmunda(requireContext()).GetDatabaseByName(databaseName) pour obtenir une base de données spécifique basée sur le nom.

Utilisez la fonction de recherche de la classe Geocoder pour rechercher. Vous pouvez spécifier LIMIT et OFFSET dans la base de données lors de la recherche, et vous pouvez également spécifier la plage de latitude et de longitude.

Par exemple, en recherchant « Université normale de Chine centrale » dans le cadre de Wuhan, le résultat LIMITE 10, sans définir le DÉCALAGE :

Si vous ne définissez pas la plage, tous les enregistrements de la base de données seront recherchés :

Si vous recherchez sur la carte, vous pouvez directement passer le BoundingBox de la MapView actuelle :

Utilisez la fonction de recherche de la classe ReverseGeocoder pour rechercher. Vous pouvez spécifier LIMIT et OFFSET dans la base de données lors de la recherche.

Vous pouvez directement passer la Localisation Android ou Osmdroid GeoPoint et IGeoPoint comme paramètres :

Vous pouvez utiliser result.toAddress() pour obtenir une adresse, puis obtenir l'adresse complète de la classe Address renvoyée, vous pouvez également obtenir le pays, la région, la ville, la route, le numéro de maison et d'autres informations.

Appareils de test : Google Pixel 3, Android Q (10.0)

Fichiers de test : hubei.osm.pbf, rhode-island.osm.bz2

Les données suivantes sont mesurées dans l'environnement ci-dessus.

La taille du fichier pbf de la province du Hubei est de 11,64 Mio (17 237 672 octets), qui contient 2 417 117 éléments, convertis en 5 505 162 enregistrements de base de données.

Le fichier de base de données décompressé fait 273,91 Mio (287 219 712 octets), soit environ 16,78 fois le pbf.

La taille du fichier osm.bz2 de Rhode Island est de 21,9 Mio (23 009 830 octets), qui contient 1 897 371 éléments, convertis en 4 525 039 enregistrements de base de données.

Le fichier de base de données décompressé fait 198,67 Mio (208 318 464 octets), soit environ 9,05 fois osm.bz2.

Le fichier de données d'une grande zone n'est pas nécessairement plus volumineux que celui d'une petite zone, il est également infecté par la population locale, la densité des établissements humains et le développement économique. Il est également lié à la disponibilité des services Open Street Map. Par exemple, le Guangdong est une province peuplée et développée et il dispose de 73 millions de données, tandis que le Xinjiang et le Tibet, peu peuplés, n'ont que 17 millions et 18 millions de données (toutes au format pbf). Veuillez organiser votre demande en fonction de la taille réelle des données. S'il n'y a pas de données disponibles, vous pouvez aller sur overpass-api https://overpass-api.de/api/map?bbox=min_longitude,min_latitude,max_longitude,max_latitude.

Vous pouvez également choisir d'importer des données de relation et des données de chemin en fonction des besoins de votre application. Pour le code spécifique, voir Importer

Étant donné que l'opération de lecture se produit dans l'osmose au lieu de Osmonde, la classe OsmosisReader dans Osmonde n'est appelé qu'après que l'Osmose a lu un élément. La fonction process() ne peut pas être incluse dans la même transaction.

Afin d'éviter la consommation de temps élevée causée par le début et la fin fréquents des transactions lors de l'insertion des données une par une, la variable commitFrequency a été définie dans la classe OsmosisReader. Lorsque les enregistrements à insérer atteignent le nombre spécifié par commitFrequency, une transaction sera ouverte pour les opérations d'insertion par lots.

Avant l'insertion, tous les enregistrements en attente actuellement lus sont en mémoire. Si la commitFrequency est trop élevée, trop de mémoire sera occupée et si la commitFrequency est trop faible, le début et la fin de la transaction seront effectués fréquemment, un temps très long sera consommé.

La valeur par défaut de commitFrequency est de 5 000, vous pouvez la modifier dans votre code en fonction de l'environnement de votre application.

En termes d'opérations de lecture et d'insertion, la vitesse de lecture du fichier pbf est beaucoup plus rapide que le format XML. Il faut environ 0,3 à 1 seconde pour lire 250 000 éléments de données et 5 à 15 secondes pour lire la même taille de données XML. L'insertion de 250 000 données prend de 4 à 7 secondes, quel que soit le format de fichier.

En termes de consommation de temps totale, lorsque commitFrequency est défini sur 1 000

500 000, le temps d'exportation du fichier pbf de la province du Hubei est d'environ 2 minutes et le temps d'exportation du fichier osm.bz2 de Rhode Island est d'environ 4 minutes, une fréquence de commit trop petite ou trop grande entraînera une opération longue, voire presque impossible à compléter.

L'opération de requête de géocodage inversé prend 3 à 5 secondes et l'opération d'obtention de l'adresse complète en fonction du résultat de la requête prend 0,3 à 3 secondes. Si vous interrogez plusieurs enregistrements d'informations géographiques à la fois, veuillez ne pas obtenir toutes les adresses complètes à la fois, mais le faire lorsque l'utilisateur accède à un certain enregistrement.

L'utilisation du processeur par les opérations de lecture de données et d'écriture de base de données est d'environ 10 à 30 %.

La consommation de mémoire des opérations de lecture de données et d'écriture de base de données est d'environ 200M-1G.

Planet OSM est la source originale de toutes les données, exploitée par Open Street Map, mais sa vitesse de téléchargement est limitée.

Il peut être téléchargé à partir d'autres sites Web de données miroir : Liste des sites

Veuillez utiliser autant que possible les fichiers au format pbf, en raison de ses avantages importants en termes d'occupation de l'espace et de temps d'importation.

Grâce à spyhunter99/osmreader, j'ai fait référence au projet, réécrit ses algorithmes de base dans kotlin, résolu le problème d'osmose qui ne fonctionnait pas et ajouté la fonction de géocodage inversé.


Imagerie, automatisation et applications

Bienvenue dans le dernier cours de la spécialisation (à moins que vous ne poursuiviez le projet de synthèse, bien sûr !). En utilisant les connaissances que vous avez acquises sur ArcGIS, effectuez des tâches techniques telles que les calculs raster et l'analyse d'adéquation. Dans ce cours, vous vous familiariserez avec l'analyse spatiale et les applications dans les SIG au cours de quatre modules d'une semaine : Semaine 1 : Vous apprendrez tout sur la télédétection et l'imagerie satellitaire, et serez initié au spectre électromagnétique. À la fin de cette semaine, vous pourrez trouver et télécharger des images satellite en ligne et les utiliser pour deux types d'analyse courants : le NDVI et la classification entraînée. Semaine 2 : Vous apprendrez à utiliser ModelBuilder pour créer des workflows de traitement volumineux qui utilisent des paramètres, des conditions préalables, des variables et un nouvel ensemble d'outils. Nous explorerons également quelques sujets que nous n'avons pas vraiment le temps d'aborder en détail, mais qui pourraient vous donner envie d'apprendre dans d'autres domaines : géocodage, données temporelles, statistiques spatiales et ArcGIS Pro. Semaine 3 : Au cours de la troisième semaine, nous créerons et utiliserons des modèles d'élévation numériques à l'aide de nouveaux outils spécifiques tels que l'outil de remblai, les ombrages, les bassins de vue et plus encore. Nous allons également passer en revue quelques algorithmes courants dont un très important : l'analyse d'adéquation. Semaine 4 : Nous commencerons la dernière semaine en parlant de quelques outils d'analyse spatiale que nous n'avons pas encore abordés dans la spécialisation : Groupe de régions pour créer nos propres zones, Statistiques focales pour lisser un ombrage, Reclassifier pour modifier les valeurs, et Densité de points pour créer une surface de densité. Enfin, nous terminerons en parlant de quelques autres choses que vous voudrez peut-être explorer davantage lorsque vous commencerez à vous familiariser avec les sujets SIG par vous-même. Suivez l'analyse géospatiale et environnementale en tant que cours autonome ou dans le cadre de la spécialisation en systèmes d'information géographique (SIG). Vous devez avoir une expérience équivalente à celle des premier, deuxième et troisième cours de cette spécialisation, « Principes fondamentaux des SIG », « Formats de données SIG, conception et qualité » et « Analyse géospatiale et environnementale », respectivement, avant de suivre ce cours. En terminant la quatrième classe, vous acquerrez les compétences nécessaires pour réussir le capstone de la spécialisation.

Олучаемые навыки

Système d'information géographique (SIG), analyse d'images, analyse spatiale, imagerie satellitaire, applications SIG

Ецензии

Très bon cours, mais certains sujets évalués dans ce cours n'étaient pas bien expliqués, notamment le traitement des images de télédétection (téléchargement et gestion vers SIG)

Un cours incroyable ! bien organisé, très informatif et riche en ressources et en matériels utiles, avec un excellent forum de discussion pour discuter des sujets du cours.

Dans ce module, nous découvrirons ModelBuilder, un outil de glisser-déposer pour l'automatisation et la réutilisation des workflows dans ArcGIS. Nous allons explorer comment les modèles sont construits, créer nos propres modèles et entreprendre la création d'un grand flux de travail de traitement ensemble dans ModelBuilder qui utilise des paramètres, des conditions préalables, des variables et un ensemble d'outils que nous n'avons pas utilisés auparavant pour travailler. Dans la seconde moitié du module, nous examinerons brièvement quelques sujets que vous devriez connaître, mais que nous n'aurons pas le temps d'explorer en profondeur. Vous serez initié au géocodage, aux données temporelles, aux statistiques spatiales et à ArcGIS Pro. Ce sont de petits teasers de capacités potentielles que vous voudrez peut-être explorer davantage à l'avenir par vous-même.


Pour le géocodage, nous devons soumettre une chaîne contenant une adresse ou un emplacement (comme une ville) dans la fonction de géocodage. Cependant, toutes les chaînes ne sont pas formatées de manière à ce que la géo-API de Google puisse les comprendre. Nous pouvons envoyer un SMS si une entrée est valide en utilisant la fonction .geocode().valid_address.

Étant donné que la sortie était True, nous savons maintenant qu'il s'agit d'une adresse valide et que nous pouvons donc imprimer les coordonnées de latitude et de longitude.

Mais encore plus intéressant, une fois l'adresse traitée par l'API Google geo, nous pouvons l'analyser et séparer facilement les numéros de rue, les noms de rue, etc.

Et voila. Python facilite l'ensemble de ce processus et son insertion dans une analyse ne prend que quelques minutes. Bonne chance!

Trouver une erreur ou un bug ?

Tout sur ce site est disponible sur GitHub. Rendez-vous sur et soumettez un changement.


Comment fonctionne le géocodage

L'API de géocodage Mapbox comprend deux parties distinctes : le données source nous utilisons pour définir les emplacements et les outils nous utilisons pour rechercher et renvoyer ces emplacements.

Données source

L'API de géocodage Mapbox contient des sources de données provenant de gouvernements, de projets de données ouvertes et d'entreprises privées. Dans certains cas, les résultats de l'API de géocodage peuvent différer des données Mapbox Streets ou OpenStreetMap.

Les données sources de l'API Mapbox Geocoding contiennent les types d'informations géographiques suivants, classés de la plus granulaire à la plus large :

  • Points d'intérêt (POI) : Un lieu nommé comprenant des entreprises commerciales, des bâtiments publics, des monuments et des parcs, entre autres caractéristiques.
  • Adresse: Une adresse postale spécifique, y compris le numéro d'adresse le cas échéant.
  • Quartier: Un nom familier pour une zone plus petite dans un lieu. Les quartiers n'ont pas nécessairement de limites spécifiques et définies par la loi. Présent uniquement dans certains pays.
  • Localité: Unité administrative plus petite qu'un lieu. Présent uniquement dans certains pays.
  • Code postal : Zone géographique du composant d'adresse utilisé pour le tri du courrier.
  • Endroit: Villes, villes et villages. Notez que certaines grandes villes (telles que Tokyo et Istanbul) peuvent être classées comme régions plutôt que comme lieux.
  • Quartier: Unité administrative plus grande qu'un lieu mais plus petite qu'une région. Présent uniquement dans certains pays.
  • Région: États, provinces et préfectures. Il s'agit généralement de la plus grande unité administrative infranationale d'un pays. Notez que certaines grandes villes (telles que Tokyo et Istanbul) peuvent être classées comme régions plutôt que comme lieux.
  • Pays: Pays généralement reconnus ou, dans certains cas comme Hong Kong, une zone de statut administratif quasi-national qui a reçu un code de pays désigné en vertu de la norme ISO 3166-1.

Cette hiérarchie de types d'entités est également utilisée pour déterminer ce qui sera renvoyé en tant qu'entités parentes englobantes dans une propriété de contexte d'objet de réponse d'API de géocodage. Par exemple, si l'entité renvoyée est un lieu (comme Détroit), les entités parent englobantes dans la propriété de contexte seront la région (État du Michigan) et le pays (États-Unis).

Outils

L'API de géocodage Mapbox utilise Carmen, un projet open source pour le géocodage à base de tuiles vectorielles Mapnik. Pour en savoir plus sur Carmen, voir Comment fonctionne Carmen ?.

Personnaliser vos requêtes

L'API Mapbox Geocoding accepte de nombreux paramètres facultatifs. Vous pouvez utiliser ces paramètres facultatifs pour personnaliser vos requêtes afin que les résultats les plus pertinents soient renvoyés. Ces paramètres peuvent être spécifiés à l'aide de paramètres de requête d'URL, ou ils peuvent être spécifiés en tant qu'options avec l'une de nos bibliothèques ou plugins côté client. Ces paramètres vous permettent d'afficher les résultats au fur et à mesure que vous tapez, de filtrer les résultats par type d'entité géographique et de limiter ou de biaiser les résultats à une zone spécifiée. Par exemple, pour limiter vos résultats de recherche aux adresses de la région métropolitaine de Washington DC, vous pouvez définir le paramètre type sur address et le paramètre bbox sur -77.08,38.90,-76.99,38.95 . Une fois ces paramètres définis, votre requête pour Constitution Ave ne renverra que les adresses postales de la zone métropolitaine de DC et n'inclura pas les fonctionnalités qui ne vous intéressent pas (comme Constitution Ave, El Paso, Texas 79908, États-Unis).

Lisez la documentation de l'API de géocodage pour plus d'informations sur les fonctionnalités disponibles.

Support linguistique

L'API Mapbox Geocoding accepte un paramètre de requête de langue, qui vous permet de spécifier la langue dans laquelle vous souhaitez effectuer la recherche. Une ou plusieurs langues peuvent être spécifiées à l'aide des codes ISO 639-1. La disponibilité de la traduction varie selon la langue et la région, et vous pouvez vous attendre à des résultats plus cohérents pour les zones où la langue spécifiée est la plus largement utilisée. La prise en charge linguistique comporte trois niveaux différents :

  • Couverture mondiale. Ces langues sont presque toujours présentes pour les caractéristiques du pays , de la région et des lieux importants.
  • Couverture locale. Ces langues peuvent manquer de couverture mondiale, mais elles sont presque toujours présentes pour les caractéristiques des pays, des régions et des lieux importants où elles sont largement utilisées.
  • Couverture limitée. Ces langues sont parfois présentes, mais la couverture a tendance à être incohérente ou géographiquement limitée.

Pour une liste actuelle des langues couvertes à chaque niveau, consultez la documentation de l'API de géocodage.

Priorisation des résultats de recherche

Les résultats des requêtes de géocodage sont hiérarchisés différemment selon que la requête était ou non un géocoder en avant ou un géocodage inversé.

Priorisation des résultats dans le géocodage avancé

Lorsqu'une requête de géocodage avancé (texte lisible par l'homme comme « San Francisco ») est soumise à l'API de géocodage Mapbox, le géocodeur utilise Carmen, un moteur de recherche de texte, pour rechercher dans nos index spatiaux des caractéristiques qui correspondent à la requête de l'utilisateur. (Pour une description plus détaillée du fonctionnement du moteur de recherche de texte Carmen, lisez la documentation Carmen.) Le géocodeur applique des filtres sur le backend pour trier les résultats qui correspondent, ou correspondent partiellement, au texte recherché. Ces filtres sont pertinence textuelle et note d'importance.

Pertinence textuelle

Lorsque le géocodeur trie et hiérarchise les résultats, le premier filtre appliqué est pertinence . pertinence est une valeur qui indique dans quelle mesure une caractéristique de notre ensemble de données correspond à la requête. Cette propriété apparaît dans la réponse de l'API de géocodage et correspond à un score numérique de 0 (le résultat ne correspond pas du tout au texte interrogé) à 1 (le résultat correspond le plus complètement au texte interrogé). Vous pouvez utiliser la propriété pertinence pour supprimer les résultats qui ne correspondent pas entièrement à la requête.

Dans cet exemple de requête pour l'adresse « 515 15th St NW, Washington, DC 20004 », le résultat attendu est le premier dans la réponse avec une pertinence de 0,875 . D'autres résultats dans d'autres villes, puisqu'ils ne correspondent pas aussi étroitement au texte de recherche, ont un score de pertinence de 0,2 .

Score d'importance

Dans le cas où plusieurs fonctionnalités ont le même score de pertinence, un deuxième filtre appelé score est appliqué. Ceci est basé sur la popularité ou l'importance d'une fonctionnalité. Par exemple, une recherche sur "Paris" correspondra également à "Paris, France" et "Paris, Texas" - ils auront le même score de pertinence. Le filtre de score aide à rompre cette égalité sur le backend et fait d'abord apparaître "Paris, France" car il s'agit d'une fonctionnalité plus populaire :

Priorisation des résultats en géocodage inversé

Pour les géocodes inversés, les résultats à un ensemble donné de coordonnées sont triés par ordre de hiérarchie spatiale. Par exemple, une caractéristique plus granulaire telle qu'une adresse , un point d'intérêt ou un code postal sera renvoyée en premier dans la réponse avant les types de caractéristique tels que région ou pays . La hiérarchie spatiale complète, classée du plus granulaire au plus grand, est : point d'intérêt (POI), adresse, quartier, localité, code postal, endroit, quartier, Région, et pays. (Pour plus de détails sur ces types d'informations géographiques, consultez la section Données sources.)

Cet exemple de requête de géocodage inversé renvoie les entités les plus proches du point de requête (dans le cas d'entités ponctuelles comme address et poi ) et les entités qui contiennent le point de requête (dans le cas d'entités surfaciques comme place ou region ), dans l'ordre hiérarchique à partir du la plus granulaire (adresse ou POI) à la plus grande caractéristique (pays) :


Ajouter la saisie semi-automatique

le Saisie automatique Le composant d'interface utilisateur offre aux utilisateurs la possibilité de rechercher des adresses ou des lieux et de recevoir des informations, notamment la latitude et la longitude, le numéro de téléphone, les catégories et de nombreuses autres informations. Au fur et à mesure que l'utilisateur tape, les prédictions de lieux s'affichent immédiatement pour l'utilisateur avec les lieux recherchés.

Il existe deux façons d'utiliser le service de saisie semi-automatique :

Lancer comme une activité pour le résultat

Si une activité de recherche distincte a du sens dans votre application, vous pouvez utiliser la classe PlaceAutocomplete pour créer votre intention, puis lancer l'activité de recherche incluse à l'aide de startActivityForResult . À l'aide de ce générateur d'intention, vous transmettez le jeton d'accès requis avec un objet placeOptions.

Lorsque l'utilisateur a fini de sélectionner un emplacement dans l'activité de saisie semi-automatique, finish() sera appelé. Pour recevoir CarmenFeature qui décrit l'endroit sélectionné par l'utilisateur, remplacez la méthode onActivityResult, vérifiez que les codes de requête et de résultat sont corrects et utilisez la méthode statique PlaceAutocomplete getPlace en transmettant l'intention.

Afficher en tant que fragment

Si vous avez besoin de plus de contrôle sur l'interface utilisateur et que vous souhaitez placer le composant Autocomplete dans un conteneur d'activités, vous pouvez utiliser le PlaceAutocompleteFragment fourni pour inclure l'interface utilisateur de recherche. Cette classe étend l'implémentation Support Library Fragment, ce qui signifie que SupportFragmentManager doit être utilisé. Dans l'extrait de code fourni ci-dessous, il vérifie que pas plus d'une instance autocompleteFragment n'est toujours utilisée. S'il n'y a pas d'instance de autocompleteFragment , il en crée une nouvelle et l'ajoute au conteneur. S'il y en a, il affiche l'autocompleteFragment à l'utilisateur à l'aide du TAG .

Pour écouter lorsque l'utilisateur sélectionne un emplacement ou annule l'autocompleteFragment , vous pouvez définir un PlaceSelectionListener sur le fragment et le rappel sera invoqué lorsque l'événement se produira.


Avantages de l'API gratuite de géocodage inversé côté client de BigDataCloud

  • Libre pour toujours!
  • NOUVEAU - Soutenu par la technologie de géolocalisation IP de nouvelle génération la plus précise au monde (brevet en instance)
  • Infrastructure redondante de niveau entreprise. Exploité à partir de huit centres de données géographiquement diversifiés à travers le monde
  • Disponibilité supérieure à 99,999 %
  • Temps de réponse sans précédent (inférieur à la milliseconde)
  • Performances prévisibles car aucune mise en cache n'est utilisée
  • Fournit des résultats basés sur les limites administratives/non administratives
  • Fournit des informations détaillées sur la localité d'un utilisateur dans 148 langues communes du monde
  • Précision géographique complète au niveau du code postal pour les États-Unis, la Grande-Bretagne et l'Australie (partielle pour les autres pays)
  • Couverture mondiale complète, y compris les mers et les océans
  • Repli unique de géolocalisation IP pour fournir des données de localisation estimées même lorsqu'aucune géocoordonnée du client n'est disponible
  • Conforme au RGPD et aux lois sur la confidentialité similaires au RGPD
  • Support client réactif, même pour les API entièrement gratuites
  • Données du géocodeur mises à jour chaque semaine, géolocalisation IP quotidiennement.
  • Aucun contrat, aucun frais caché et aucun compte requis. Les utilisations commerciales et non commerciales sont autorisées sans restriction de taux - nous sommes heureux d'accepter littéralement n'importe quel nombre de requêtes API et à n'importe quel rythme tant que les conditions de notre politique d'utilisation équitable sont remplies (voir ci-dessous).

Services d'enrichissement des données disponibles avec Inkit

L'outil d'automatisation des communications hors ligne Inkit mail & optimise le publipostage avec des services intégrés d'enrichissement des données et des fonctionnalités supplémentaires disponibles via les intégrations. L'outil comprend USPS et la validation d'adresse internationale qui vérifie automatiquement les informations de contact enregistrées, les formate et ajoute les détails manquants lorsque cela est possible. Ainsi, vos communications mailing atteignent toujours la cible et les taux de retour baissent considérablement.

Outre les services intégrés de validation et d'enrichissement des données, Inkit propose de nombreuses intégrations. Par exemple, vous pouvez le connecter à TowerData et à un fournisseur de services de messagerie tel que Iterable pour obtenir une adresse physique à partir d'une adresse e-mail uniquement.

En outre, Inkit fonctionne avec tout autre outil de géocodage inversé qui prend en charge les intégrations via le webhook. En utilisant Inkit comme plate-forme d'intégration d'API, vous pouvez connecter plusieurs canaux de données et traiter automatiquement les entrées pour les formater, les nettoyer et les enrichir.

Intéressé par l'utilisation d'Inkit pour les services d'enrichissement des données et l'automatisation du courrier ? Contactez-nous pour obtenir une démo.


Voir la vidéo: QGIS: Geocoding