Xamarin.forms - Xam.Plugin.Media throwing error Эта функциональность не реализована в переносной версии этой сборки

Matija Vasko спросил: 12 мая 2018 в 04:55 в: android

Я использую Xam.Plugin.Media для реализации функций для выбора и выбора фотографии на Android и iOS. Я установил последнюю стабильную версию пакета Xam.Plugin.Media NuGet (версия 4.0.0.9) и выполнил шаги от автора на GitHub, и когда я нажимаю кнопку, это сообщение появляется и независимо от того, что я делаю, это не исчезнет. Поэтому, если у вас есть эта проблема и она была решена, пожалуйста, помогите мне, и если у вас есть дополнительная информация об этой ошибке, пожалуйста, помогите мне.

Я попытался выполнить следующие действия, но безуспешно:

  • Повторная установка пакета несколько раз
  • Удаление Папки Obj и Bin
  • Очистить + построить

Это моя модель просмотра:

public ICommand UploadImageCommand => new Command(async () =>
    {
        await Resiliency.TryAsync(IsBusy, async () =>
        {
            await UploadImageAsync();
        });    });    private async Task UploadImageAsync()
    {
        await CrossMedia.Current.Initialize();        if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.IsTakePhotoSupported)
        {
            await DialogService.ShowExceptionAlertAsync("No Camera");
            return;
        }        var file = await CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions
        {
            SaveToAlbum = true
        });        if (file == null)
            return;        _imagePath = ImageSource.FromStream(() =>
        {
            var stream = file.GetStream();
            return stream;
        });
    }

Дополнительная информация:

  • При отладке он сбрасывается в первой строке метода - "ждать CrossMedia.Current.Initialize ();"
  • Это происходит на Android, и я использую физическое устройство ( Huawei P9 Lite 7.0 API 24), но то же самое происходит и с эмулятором API 23 6.0.
  • Я использую предприятие Visual Studio 2015 с обновлением 3
  • Да, пакет установлен в основном проекте и в проекте Android и iOS

1 ответ

Есть решение
Ali123 ответил: 13 мая 2018 в 08:42

Проверьте ответ оригинального разработчика в репозитории GitHub

Ошибка Xam.Plugin.Media throw Эта функция не реализована в переносной версии этой сборки # 559

Вы также можете загрузить образец и посмотреть, как он работает.

The OrangeGoblin ответил: 02 июня 2018 в 07:22
Это не работает, у меня такая же проблема, и она кажется обычной.
Ali123 ответил: 02 июня 2018 в 03:12
@TheOrangeGoblin вы попробовали пример приложения? это не обычная проблема, так как не многие ответили на этот вопрос, и это, безусловно, сработало для меня в версии 3.1.3. Попробуйте пример приложения и поделитесь своими данными с потоком GitHub, если у вас есть.
The OrangeGoblin ответил: 03 июня 2018 в 10:18
Спасибо за ваш ответ. Я использую версию 4 плагина, и это то, что дает мне проблему. Я загружу образец из Github и дам вам знать ... Кстати, у вас есть ссылка на версию 3.1.3?
Ali123 ответил: 03 июня 2018 в 03:05
Это пакет nuget. Таким образом, вы можете загружать и устанавливать любую версию, которую вы хотите, из visual studio IDE. Вы также можете загрузить его с сайта nuget, но тогда вам нужно будет установить его вручную, и это намного проще сделать в визуальной студии. nuget.org/packages/Xam.Plugin.Media
The OrangeGoblin ответил: 04 июня 2018 в 05:33
Мне удалось заставить его работать, я не знаю, как это сделать. Создав несколько новых проектов, эта работа сработала.