为什么 DeviceAccessInformation.CreateFromDeviceClass 抛出 FileNotFoundException
Why does DeviceAccessInformation.CreateFromDeviceClass throw a FileNotFound Exception
我有以下代码片段,用于检查我是否可以访问定位服务。它构建正常,但在设备和模拟器上,我在开关 (accessInfo.CurrentStatus) 行上得到一个 FileNotFound 异常(Google 上没有关于此的任何内容)
var accessInfo = DeviceAccessInformation.CreateFromDeviceClass(DeviceClass.Location);
accessInfo.AccessChanged += OnAccessChanged;
switch (accessInfo.CurrentStatus)
{
case DeviceAccessStatus.Unspecified:
break;
case DeviceAccessStatus.Allowed:
break;
case DeviceAccessStatus.DeniedByUser:
break;
case DeviceAccessStatus.DeniedBySystem:
break;
default:
throw new ArgumentOutOfRangeException();
}
Windows 和 Windows Phone 中的设备堆栈在 8.x 中并不完全相同。地理位置是它们不同的一个例子,这在这个错误中表现出来。您可以改用 Geolocator.LocationStatus
API。请注意,在 Windows Phone 上,应用始终被授予定位功能(这是安装时的提示),尽管用户仍可以全局关闭定位功能。
我有以下代码片段,用于检查我是否可以访问定位服务。它构建正常,但在设备和模拟器上,我在开关 (accessInfo.CurrentStatus) 行上得到一个 FileNotFound 异常(Google 上没有关于此的任何内容)
var accessInfo = DeviceAccessInformation.CreateFromDeviceClass(DeviceClass.Location);
accessInfo.AccessChanged += OnAccessChanged;
switch (accessInfo.CurrentStatus)
{
case DeviceAccessStatus.Unspecified:
break;
case DeviceAccessStatus.Allowed:
break;
case DeviceAccessStatus.DeniedByUser:
break;
case DeviceAccessStatus.DeniedBySystem:
break;
default:
throw new ArgumentOutOfRangeException();
}
Windows 和 Windows Phone 中的设备堆栈在 8.x 中并不完全相同。地理位置是它们不同的一个例子,这在这个错误中表现出来。您可以改用 Geolocator.LocationStatus
API。请注意,在 Windows Phone 上,应用始终被授予定位功能(这是安装时的提示),尽管用户仍可以全局关闭定位功能。