UWP CompactOverlay模式(Picture-inPicture)IsViewModeSupported Exception

and*_*ndy 1 c# win-universal-app uwp

目前我正在测试新的CompactOverlay模式,但是在运行应用程序而不是创建者更新(例如周年纪念更新)时似乎存在问题.这是一段简化的代码

// Check if it is supported
if (ApplicationView.GetForCurrentView().IsViewModeSupported(ApplicationViewMode.CompactOverlay))
{
  // Supported
}
else
{
  // Not supported
}
Run Code Online (Sandbox Code Playgroud)

但是在创建者更新之前的Windows版本上,这给了我一个例外:

System.InvalidCastException: ‘Unable to cast object of type ‘Windows.UI.ViewManagement.ApplicationView’ to type ‘Windows.UI.ViewManagement.IApplicationView4
Run Code Online (Sandbox Code Playgroud)

这是一个错误,还是我需要检查其他的东西?

Ste*_*SFT 5

这是预料之中的.API是Creators Update中的新增功能,因此无法在早期版本的操作系统上运行.IsViewModeSupported API将告诉您正在运行的设备(PC,电话,xbox等)是否支持相应的视图模式.在进行此检查之前,首先应检查viewmode API本身是否存在.您可以使用以下API执行此操作