Ошибка "MapView не найдена в Esri.ArcGISRuntime.Xamarin.Forms" Ошибка Xamarin Forms iOS

Я использую ArcGIS Runtime 100.4.0 в своем решении форм Xamarin, которое состоит из

  • Android Project
  • IOS
  • Проект.Net Standard 2 (общая логика, используемая android и ios)

Мой код очень прост, и он только пытается отобразить карту. Я использовал код из примера Esri для отображения карты, и он уже работает в другом проекте, где логика приложения находится в общем проекте Visual Studio (вместо стандарта.net). В примере проекта Esri также используется общий проект Visual Studio. Я думаю, что проблема, с которой я сталкиваюсь, может быть решена с помощью общего проекта Visual Studio, но по некоторым техническим причинам я должен использовать.Net Standard для своей общей логики.
Теперь вот вопрос:
Приложение для Android показывает карту без проблем, однако в моем приложении для iOS в стандартном проекте.net появляется следующая ошибка, когда приложение пытается инициализировать карту:

MapView не найден в пространстве имен xmlns clr:Esri.ArcGISRuntime.Xamarin.Forms; Assembly=Esri.ArcGISRuntime.Xamarin.Forms

Я уверен, что у меня есть все правильные ссылки в моем проекте iOS, а также тот факт, что ошибка происходит в стандартном проекте.net, который работает в моем приложении Android.
Как можно пропустить класс MapView при использовании моего проекта.netstandard в iOS, но не в Android?

1 ответ

Решение

Пока я изучал это, я нашел решение, которое не имею понятия о причине:
Я добавил строку раньше InitializeComponent() в моей странице код, который просто создает экземпляр Esri.ArcGISRuntime.Xamarin.Forms.MapViewи это исправило:

    public MapPage()
    {
        var a = new Esri.ArcGISRuntime.Xamarin.Forms.MapView();
        InitializeComponent();
    }

Если я удалю эту строку, я получу ошибку снова в iOS. Я понятия не имею, почему это происходит

Другие вопросы по тегам