Я создаю универсальное приложение Windows. Я хочу, чтобы пользователь мог загрузить изображение, и пользователь должен иметь возможность взять его на месте и отправить. У меня это работает с использованием API MediaCapture. Однако я могу использовать только одну камеру, поэтому, например, если у моего телефона есть передняя и задняя камеры, используется только передняя камера. Как я могу переключить используемую камеру?
Я где-то читал об использовании чего-то вроде этого:
private static async Task<DeviceInformation> GetCameraID(Windows.Devices.Enumeration.Panel desired)
{
DeviceInformation deviceID = (await DeviceInformation.FindAllAsync(DeviceClass.VideoCapture))
.FirstOrDefault(x => x.EnclosureLocation != null && x.EnclosureLocation.Panel == desired);
return deviceID;
}
Однако для меня это всегда возвращает значение null, поскольку идентификатор устройства всегда равен нулю.
В качестве альтернативы есть ли возможность передать управление приложению, которое делает снимок и возвращает сделанное изображение моему приложению? Я обнаружил следующее, но оно не работает для универсальных приложений Windows: http://msdn.microsoft.com/en-us/library/windows/apps/hh394006(v=vs.105).aspx
var devices = (await DeviceInformation.FindAllAsync(DeviceClass.All)).ToList();, потом проверить какие устройства возвращаются? Сможете ли вы найти там камеры? - person Romasz   schedule 01.10.2014