#huawei-mobile-services #huawei-developers
Вопрос:
Я использую плагин geolocator flutter , чтобы получить название места из латлонга и получить адрес из латлонга, каково альтернативное решение в HMS, чтобы получить название места из латлонга и получить адрес из латлонга.
Ответ №1:
Да, в наборе сайтов есть альтернативный API(Rest API), с помощью которого вы можете выполнять прямое геокодирование и обратное геокодирование, пожалуйста, обратитесь к ссылке ниже, которая поможет вам реализовать эту функцию:
Ответ №2:
Учитывая, что вы используете плагин flutter, предполагая, что многоплатформенная встроенная поддержка важна для вашего приложения за пределами мобильных телефонов Huawei, лучшим подходящим решением в HMS было бы использовать API обратного геокодирования REST Site Kit для получения названия места и адреса от latlong за один вызов веб-службы RESTful. Для получения подробной информации об API, пожалуйста, обратитесь к следующей странице сайта Site Kit-Обратное геокодирование (huawei.com).
API возвращает коллекцию объектов сайта, и пример объекта JSON приведен ниже. Вы можете видеть, что адрес находится вверху, а имя-в нижней части возвращаемого объекта сайта.
{
"formatAddress": "Piazzale Dante, 41, 55049 Viareggio, Tuscany, Italy",
"address": {
"country": "Italy",
"streetNumber": "41",
"countryCode": "IT",
"tertiaryAdminArea": "Viareggio",
"postalCode": "55049",
"locality": "Viareggio",
"adminArea": "Tuscany",
"subAdminArea": "Lucca",
"thoroughfare": "Piazzale Dante"
},
"aoiFlag": false,
"poi": {
"hwPoiTypes": [
"NATIONAL_RAILWAY_STATION"
],
"rating": 0.0,
"icon": "https://lfcontentcenterdev.hwcloudtest.cn/pub_1/HuaweiMaps_camp_0_9/ec/v3/vut4tpV7SaOciBZ2xc1yMw/Railway.png",
"internationalPhone": "",
"poiTypes": [
"TRAIN_STATION"
]
},
"viewport": {
"southwest": {
"lng": 10.25073768878106,
"lat": 43.87264496679441
},
"northeast": {
"lng": 10.25426631121894,
"lat": 43.875188633205596
}
},
"name": "Viareggio",
"siteId": "652973768919107712",
"location": {
"lng": 10.252502,
"lat": 43.8739168
}
}