我一直在关注将 SkiaSharp 与 Xamarin Forms 结合使用的示例,尤其是有关使用位图的部分。我在 Microsoft Visual Studio 2017 版本 15.9.11 中执行此操作。我目前只针对Android。
此页面https://docs.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/graphics/skiasharp/basics/bitmaps有一个关于加载位图资源的部分,其中位图是嵌入的图像资源在项目中。
然后运行示例代码以简单地在画布上显示图像。
string resourceID = "SkiaTest.Media.monkey.png";
Assembly assembly = GetType().GetTypeInfo().Assembly;
using (Stream stream = assembly.GetManifestResourceStream(resourceID))
{
resourceBitmap = SKBitmap.Decode(stream);
}
一切都非常简单,如果我在手机上运行代码,如果它以标准方式(索尼 Z5)通过 USB 连接,那么它工作正常,所以这里列表中的第二个,而不是播放器:
它通过 USB 工作:
但是,如果我尝试使用 Xamarin Live Player(上面列表中的第一个),那么它会在这一行崩溃:
using (Stream stream = assembly.GetManifestResourceStream(resourceID))
请注意,如果我不尝试加载位图,应用程序在 Live Player 中运行良好,只有那一行会触发崩溃,并且仅在 Live Player 中。
所以我想知道是否有人知道是什么导致 Live Player 无法解决这个问题?资源没有被复制到手机上吗?Live Player 是否不支持此类活动?