Я пытаюсь настроить базовое приложение для вызова API Google Directions из приложения Xamarin.Forms в Android. Я новичок в Xamarin и C# в целом, поэтому изо всех сил пытался найти правильные термины, но знаком со службой направлений с точки зрения javascript.
Я использую это простое приложение в качестве испытательного стенда: https://docs.microsoft.com/en-us/xamarin/android/platform/maps-and-location/maps/maps-api.
Я могу добавить кнопку и связать с ней процесс, но как мне вызвать API и получить результаты?
Я позабочусь о графике и т. д. Позже, я просто хочу записать результаты на консоль.
Заранее спасибо за помощь!





1. Прежде всего, вы можете использовать следующий URL-адрес для получения данных Json. (Обратите внимание: вам необходимо включить Directions API в консоли Google, иначе вы получите сообщение об ошибке This API project is not authorized to use this API.)
https://maps.googleapis.com/maps/api/directions/json?origin=lat1,lon1&destination=lat2,lon2&key=yourApiKey
В этом URL-адресе вам необходимо указать широту и долготу исходной позиции и конечной позиции. Ключ API (вы можете получить ключ API из консоли Google)
2. Вы можете поиграть и просто изменить переменные в этой ссылке и открыть ее в браузере, чтобы увидеть возвращаемый объект, как на этом снимке экрана.

3. Когда вы получите возвращаемый объект, вам нужно будет его проанализировать. (Prase json data: http://bsubramanyamraju.blogspot.com/2017/04/xamarinforms-using-rest-webserivce_17.html)
4.Расстояние будет googleApiRouteObject.routes[0].legs[0].distance; Там вы найдете целочисленное представление в метрах и строковое представление, например 2 км.
5.Путевые точки будут закодированы полилиниями, вам нужно будет их разобрать. Вы можете найти, как это сделать, с примерами кода здесь: https://developers.google.com/maps/documentation/utilities/polylineutility
Если вы хотите получить образец кода, вы можете перейти по этой ссылке.
https://agileapp.co/xamarin-forms-maps-polyline-route-highlighted-google-api
Есть ли обновления по этой проблеме? Если ответ полезен, попробуйте пометить его как ответ, это поможет другим, у кого есть похожая проблема.