VideoDeviceController.CameraOcclusionInfo Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft ein CameraOcclusionInfo-Objekt ab, das verwendet werden kann, um den aktuellen Okklusionszustand einer Kamera abzurufen und Benachrichtigungen zu erhalten, wenn sich der Okklusionszustand ändert.
public:
property CameraOcclusionInfo ^ CameraOcclusionInfo { CameraOcclusionInfo ^ get(); };
CameraOcclusionInfo CameraOcclusionInfo();
public CameraOcclusionInfo CameraOcclusionInfo { get; }
var cameraOcclusionInfo = videoDeviceController.cameraOcclusionInfo;
Public ReadOnly Property CameraOcclusionInfo As CameraOcclusionInfo
Eigenschaftswert
CameraOcclusionInfo für das Aufnahmegerät.
Windows-Anforderungen
Gerätefamilie |
Windows 11 (eingeführt in 10.0.22000.0)
|
API contract |
Windows.Foundation.UniversalApiContract (eingeführt in v14.0)
|
Beispiele
Der folgende Beispielcode veranschaulicht die Verwendung der CameraOcclusionInfo-Klasse zum Überwachen des Okklusionszustands der Kamera.
protected override async void OnNavigatedTo(NavigationEventArgs e)
{
await mediaCapture.InitializeAsync();
var occlusionInfo = mediaCapture.VideoDeviceController.CameraOcclusionInfo;
occlusionInfo.StateChanged += CameraOcclusionInfo_StateChanged;
}
private void CameraOcclusionInfo_StateChanged(CameraOcclusionInfo sender, CameraOcclusionStateChangedEventArgs args)
{
if (args.State.IsOccluded)
{
String occlusionString = "";
if (args.State.IsOcclusionKind(CameraOcclusionKind.Lid))
{
occlusionString = "Lid";
}
else if (args.State.IsOcclusionKind(CameraOcclusionKind.CameraHardware))
{
occlusionString = "Camera Hardware";
}
else
{
occlusionString = "Unknown";
}
Debug.WriteLine(String.Format("The camera view is blocked by {0}", occlusionString);
}
else
{
Debug.WriteLine("Camera is not occluded");
}
}
Hinweise
Sie sollten nur die über diese Eigenschaft abgerufenen Verschlusszustandsdaten verwenden, während die Kamera aktiv gestreamt wird. Apps sollten auf logische Weise reagieren, wenn sie erkennen, dass der Verschluss geschlossen ist. Dies sollte eine In-App-Nachricht enthalten, um den Verschluss zu öffnen. Anwendungen dürfen nicht automatisch eine Aktion ausführen (z. B. die Kamera ausschalten) oder den Benutzer daran hindern, eine Aktion auszuführen (z. B. die Kamera einzuschalten), die auf dem Verschlusszustand basiert, da nicht jede Kamera zuverlässig den Verschlusszustand meldet, wenn sie nicht gestreamt wird. Anwendungen dürfen den gemeldeten Verschlusszustand nicht als absoluten Datenschutzindikator behandeln – es handelt sich nur um eine Benachrichtigung, dass die Kamera glaubt, dass der Verschluss geschlossen ist.