我正在使用Visual Studio 2015开始我的第一个Xamarin Forms应用程序。默认模板提供了6个Project。 (Android,iOS,PCL,UWP,8.1,Windows手机)。
所有项目都能正常运行,包括Android,8.1,Windows Phone模拟器。
但是当我尝试部署UWP项目时,在第一个语句中打破(Exception),它在PCL中调用MainPage。这在Local Machine和Emulator中都会发生。 (调试模式,所有CPU)。
我已经将xamarin表单更新到最新的稳定版本,更新了Visual Studio,但我无法解决问题。
例外:
发生了'System.TypeLoadException'类型的异常 Xamarin.Forms.Platform.UAP.dll但未在用户代码中处理
其他信息:找不到Windows运行时类型 'Windows.UI.ViewManagement.StatusBar'。
请帮助
答案 0 :(得分:4)
Windows.UI.ViewManagement.StatusBar
是一种仅在Windows Mobile Extension SDK中可用的类型,您必须引用此SDK才能使其可用。
在解决方案资源管理器中右键单击您的UWP项目,选择Add
- > Reference
,然后在Universal Windows下选择Extensions并找到Windows Mobile Extensions for the UWP
。检查与您的应用的目标Windows 10版本匹配的版本。
您还需要使用IsTypePresent
API,如果当前设备上的类型可用,它将在运行时检查。这很重要,因为在Windows 10的任何其他版本上都不存在StatusBar
而不是在移动版本上:
if(ApiInformation.IsTypePresent("Windows.UI.ViewManagement.StatusBar") )
{
//your code
}
答案 1 :(得分:0)
看起来像xamarin UWP概念中的问题,你更新了Xamain.Forms吗? 转到工具 - > NuGet包管理器 - >管理解决方案包 - > Microsoft.NETCore.Universal Windows平台 - >更新最新版本。
更新完所有后,还是同样的问题请在这里查看一些 https://forums.xamarin.com/discussion/64731/how-to-solve-unknown-type-in-uwp-app-windows-ui-viewmanagement-statusbar答案 2 :(得分:0)
如果没有这项工作,请尝试将Windows SDK更新到最新版本。它对我有用。我还添加了对Windows Mobile Extensions for the UWP
的引用。
修改强>
我也尝试过,有时当你更新visual studio时它会再次失败。我不得不在我的UWP项目中手动更改de SDK版本,转到Properties>申请>目标版本>选择最新版本