C# Windows Phone 8.1摄像头初始化-访问被拒绝异常
使用Windows Phone的8.1 MediaCapture类 声明了“音频”和“网络摄像头”的功能,这90%是导致异常的原因 Kicker是,它在WP模拟器中工作得很好,但在实际设备上会中断 确切的例外情况是: 我添加了大量的检查,以确保我们没有初始化已经初始化的相机,也没有在初始化之前尝试读取。。etc(我假设问题是由)造成的,所以不太可能是这样C# Windows Phone 8.1摄像头初始化-访问被拒绝异常,c#,.net,camera,windows-8.1,windows-phone-8.1,C#,.net,Camera,Windows 8.1,Windows Phone 8.1,使用Windows Phone的8.1 MediaCapture类 声明了“音频”和“网络摄像头”的功能,这90%是导致异常的原因 Kicker是,它在WP模拟器中工作得很好,但在实际设备上会中断 确切的例外情况是: 我添加了大量的检查,以确保我们没有初始化已经初始化的相机,也没有在初始化之前尝试读取。。etc(我假设问题是由)造成的,所以不太可能是这样 private async Task InitializeCameraAsync() { if (_isIn
private async Task InitializeCameraAsync()
{
if (_isInitialized)
{
Debug.WriteLine("Skipping unnecessary initialization");
return;
}
Debug.WriteLine("Initializing camera media capture...");
_deviceCapture = new MediaCapture();
await _deviceCapture.InitializeAsync(new MediaCaptureInitializationSettings
{
VideoDeviceId = _cameraInfoCollection[_currentVideoDevice].Id,
PhotoCaptureSource = PhotoCaptureSource.VideoPreview,
AudioDeviceId = _microphoneInfoCollection[_currentAudioDevice].Id
StreamingCaptureMode = StreamingCaptureMode.Video
});
Debug.WriteLine("Initialized camera media capture!");
// For code completion only, unlikely to be relevant
// Set up low-lag photo capture
if (IsNotUsingInstantCapture)
{
Debug.WriteLine("Preparing low-lag photo capture");
var imageEncoding = ImageEncodingProperties.CreateJpeg();
imageEncoding.Width = PhotoCaptureWidth;
imageEncoding.Height = PhotoCaptureHeight;
_lowLagPhotoCapture = await _deviceCapture.PrepareLowLagPhotoCaptureAsync(imageEncoding);
}
_isInitialized = true;
Debug.WriteLine("Initialized camera!");
}
_然后将mediacapture绑定到xaml CaptureElement的.source以显示预览。这是Windows api的一个临时错误。2014年9月24日发布的Windows Phone 8.1更新修复了该错误。该错误听起来与中描述的行为一致。是否有可能在测试设备上,用户帐户意外拒绝访问此应用程序的网络摄像头或麦克风?但这是我第一次使用windows phone,据我所知,您作为用户无法禁用/启用对上述内容的访问。好吧,这只是在从商店安装应用程序时才开始的?似乎有一个问题(我的设备也有问题)-我有一个简单的程序,过去用来拍照,现在正在工作,经过一些更新后,现在它不工作了。我也尝试过跑步,但没有成功。我在Lumia 620和Lumia 1020上都遇到了完全相同的问题。不过值得注意的是,在很短的一段时间内,我让(前)摄像头在620上工作。在更新到最新的开发者预览版后,我又开始遇到拒绝访问的异常,就像1020一样还没有解决方案。这个问题有解决方案吗?