Использование Google Maps в Xamarin.Forms для Android

Итак, нам нужно создать приложение, отображающее карту, и в настоящее время мы используем Xamarin.Forms для его интеграции. Однако мы не будем использовать Xamarin.Forms.Maps, поскольку нам нужно использовать API Google Maps для iOS, а не его родную карту MapKit.

У меня вопрос, как мне интегрировать этот компонент https://components.xamarin.com/view/googleplayservices-maps в Xamarin.Forms?


person AlexaMayer    schedule 04.01.2016    source источник
comment
Почему бы вам не использовать Xamarin.Forms.Maps для Android и использовать этот компонент для Android; components.xamarin.com/view/googleiosmaps или, возможно, используйте этот код "Начало работы" чтобы вы могли работать с компонентом, на который вы ссылаетесь.   -  person Gerald Versluis    schedule 04.01.2016
comment
Так что ничего, если я интегрирую карту Android как Xamarin.Forms.Maps, пока я использую googleiosmaps для iOS?   -  person AlexaMayer    schedule 04.01.2016
comment
Это не идеально с точки зрения совместного использования кода и т. д., но это, конечно, вариант.   -  person Gerald Versluis    schedule 04.01.2016
comment
Хорошо спасибо. Я взвешиваю свои варианты. :)   -  person AlexaMayer    schedule 04.01.2016


Ответы (2)


Вы можете внедрить карту Google (для Android или iOS) в представление Xamarin.Forms.

Пример в Android:

public class AndroidMapRenderer : ViewRenderer
{
    protected override void OnElementChanged(ElementChangedEventArgs<View> e)
    {
        base.OnElementChanged(e);

        var mapView = new Android.Gms.Maps.MapView(Context);
        SetNativeControl(mapView);
    }
}

Это "пользовательский рендерер".

Пожалуйста, прочтите это:

person amay077    schedule 25.06.2016

Прочтите это руководство https://docs.xamarin.com/guides/xamarin-forms/user-interface/map/

Control Map использует вашу карту для каждой платформы

Android — Google Карты

iOS — Карты Apple

Windows Phone — Карты Bing

Чтобы карта работала, для каждой платформы нужно добавить ключевую карту, все пишу, удачи!

person Jasper    schedule 13.04.2016