Как мы можем добавить android nugets в Xamarin.forms и не только в Xamarin. Android - PullRequest
0 голосов
/ 03 февраля 2020

Я пытаюсь установить приведенный ниже NuGet в проекте Xamarin Forms (а не в проекте Xamarin. Android)

  • Xamarin. Android .Support.core.Utiles
  • Xamarin. Android .Support.Animated.Vector.Drawable

Я хочу получить доступ к MediaProjectionManager в моем классе проекта Xamarin без условий платформы c. Пожалуйста, помогите мне с этим.

Прямо сейчас всякий раз, когда я пытаюсь установить связанные с android пакеты NuGet в проекте Xamarin Forms, я получаю сообщение об ошибке ниже.

Error   NU1202  Package Xamarin.Android.Support.Vector.Drawable 28.0.0.3 is not compatible with netstandard2.1 (.NETStandard,Version=v2.1). Package Xamarin.Android.Support.Vector.Drawable 28.0.0.3 supports:
  - monoandroid60 (MonoAndroid,Version=v6.0)
  - monoandroid70 (MonoAndroid,Version=v7.0)
  - monoandroid71 (MonoAndroid,Version=v7.1)
  - monoandroid80 (MonoAndroid,Version=v8.0)
  - monoandroid81 (MonoAndroid,Version=v8.1)
  - monoandroid90 (MonoAndroid,Version=v9.0)    

Error Package restore failed. Rolling back package changes for .                    

Если я пишу приведенный ниже код в файле cs в проекте Xamarin, и если я пытаюсь получить доступ к объекту ниже из файла MainActivity.cs в проекте Xamarin. Android, я получаю ошибку ниже.

Объект MediaProjection недоступен в XamarinFile. Он не может получить доступ к любой android связанной функции или объекту.

#if __ANDROID__
        public MediaProjection MediaProjection { get; set; }
#endif

XamarinFile.Instance.MediaProjection = manager.GetMediaProjection((int)resultCode, data);

1 Ответ

0 голосов
/ 03 февраля 2020

Вы пытаетесь установить библиотеку Android -specifi c в Xamarin. NET Проект Standard / PCL, который не совместим. Сама ошибка ясно говорит об этом. Если вы хотите использовать какую-либо функциональность c, определяемую платформой, для своего приложения Xamarin Forms, то вы можете попытаться создать для него пользовательское представление и написать собственный рендерер в собственных проектах. В соответствующем родном проекте установите желаемый пакет и добейтесь того, чего хотите.

Подробнее см. В документации Пользовательские средства визуализации Xamarin Forms .

В противном случае попробуйте создать проект как общий проект вместо. NET Стандартный проект.

Более подробную информацию см. В документации Общий проект здесь .

...