Xamarin Live Player дает сбой при загрузке растрового изображения, но работает нормально через USB-соединение - PullRequest
0 голосов
/ 08 апреля 2019

Я следовал примерам использования SkiaSharp с формами Xamarin, особенно разделу по использованию растровых изображений.Я делаю это в Microsoft Visual Studio 2017 версии 15.9.11.В настоящее время я нацеливаюсь только на Android.

На этой странице https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/graphics/skiasharp/basics/bitmaps есть раздел «Загрузка растрового ресурса», где растровое изображение является встроенным ресурсом изображения в проекте.

Итакмы добавляем изображение и набираем его «встроенный ресурс» added as an embedded resource

, а затем запускаем пример кода, чтобы просто отобразить изображение на холсте.

string resourceID = "SkiaTest.Media.monkey.png";
Assembly assembly = GetType().GetTypeInfo().Assembly;

using (Stream stream = assembly.GetManifestResourceStream(resourceID))
{
    resourceBitmap = SKBitmap.Decode(stream);
}

Все довольно просто, и работает нормально, если я запускаю код на своем телефоне, если он подключен через USB стандартным способом (Sony Z5), поэтому вторым в списке здесь, а неПлеер:

drop down list of players in VS

Здесь он работает через USB:

working via USB

Но если я попытаюсь использовать Xamarin Live Player (первый в списке выше), он вылетит в этой строке:

using (Stream stream = assembly.GetManifestResourceStream(resourceID))

enter image description here

Примечаниечто приложение нормально работает в Live Player, если я не пытаюсь загрузить растровое изображение, только эта строка вызывает сбой, и только в Live Player.

Поэтому мне интересно, есть ли у кого-нибудь идеи, что могло быбыть причиной сбоя Live Player из-за этой проблемы?Ресурс не копируется на телефон?Live Player просто не поддерживает этот вид деятельности?

1 Ответ

0 голосов
/ 08 апреля 2019

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

Более подробную информацию можно найти в Устранении неполадок Xamarin Live Player документ.

...