Xamarin.Essentials: TaschenlampeXamarin.Essentials: Flashlight

Mit der Klasse Flashlight können Sie das Blitzlicht der Gerätekamera aktivieren bzw. deaktivieren, um es als Taschenlampe einzusetzen.The Flashlight class has the ability to turn on or off the device's camera flash to turn it into a flashlight.

Erste SchritteGet started

Lesen Sie zum Einstieg in diese API das Handbuch Erste Schritte mit Xamarin.Essentials, um sicherzustellen, dass die Bibliothek ordnungsgemäß installiert und in Ihren Projekten eingerichtet ist.To start using this API, read the getting started guide for Xamarin.Essentials to ensure the library is properly installed and set up in your projects.

Für den Zugriff auf die Taschenlampen-Funktion ist die folgende plattformspezifische Einrichtung erforderlich.To access the Flashlight functionality the following platform specific setup is required.

Die Berechtigungen „Flashlight“ und „Camera“ sind erforderlich und müssen im Android-Projekt konfiguriert werden.The Flashlight and Camera permissions are required and must be configured in the Android project. Das Hinzufügen erfolgt folgendermaßen:This can be added in the following ways:

Öffnen Sie die Datei AssemblyInfo.cs im Ordner Eigenschaften und fügen Sie Folgendes hinzu:Open the AssemblyInfo.cs file under the Properties folder and add:

[assembly: UsesPermission(Android.Manifest.Permission.Flashlight)]
[assembly: UsesPermission(Android.Manifest.Permission.Camera)]

Alternativ können Sie das Android-Manifest aktualisieren:OR Update Android Manifest:

Öffnen Sie die Datei AndroidManifest.xml im Ordner Eigenschaften, und fügen Sie Folgendes im Knoten Manifest hinzu.Open the AndroidManifest.xml file under the Properties folder and add the following inside of the manifest node.

<uses-permission android:name="android.permission.FLASHLIGHT" />
<uses-permission android:name="android.permission.CAMERA" />

Alternativ können Sie mit der rechten Maustaste auf das Android-Projekt klicken und die Eigenschaften des Projekts öffnen.Or right click on the Android project and open the project's properties. Suchen Sie unter Android-Manifest den Bereich Erforderliche Berechtigungen:, und aktivieren Sie die Berechtigungen FLASHLIGHT (Taschenlampe) und CAMERA (Kamera).Under Android Manifest find the Required permissions: area and check the FLASHLIGHT and CAMERA permissions. Dadurch wird die Datei AndroidManifest.xml automatisch aktualisiert.This will automatically update the AndroidManifest.xml file.

Durch das Hinzufügen dieser Berechtigungen filtert Google Play automatisch die Geräte heraus, die keine spezifische Hardware aufweisen.By adding these permissions Google Play will automatically filter out devices without specific hardware. Sie können dies umgehen, indem Sie Folgendes der Datei „AssemblyInfo.cs“ in Ihrem Android-Projekt hinzufügen:You can get around this by adding the following to your AssemblyInfo.cs file in your Android project:

[assembly: UsesFeature("android.hardware.camera", Required = false)]
[assembly: UsesFeature("android.hardware.camera.autofocus", Required = false)]

Verwenden der TaschenlampeUsing Flashlight

Fügen Sie Ihrer Klasse einen Verweis auf Xamarin.Essentials hinzu:Add a reference to Xamarin.Essentials in your class:

using Xamarin.Essentials;

Die Taschenlampe kann mit den Methoden TurnOnAsync und TurnOffAsync aktiviert bzw. deaktiviert werden:The flashlight can be turned on and off through the TurnOnAsync and TurnOffAsync methods:

try
{
    // Turn On
    await Flashlight.TurnOnAsync();

    // Turn Off
    await Flashlight.TurnOffAsync();
}
catch (FeatureNotSupportedException fnsEx)
{
    // Handle not supported on device exception
}
catch (PermissionException pEx)
{
    // Handle permission exception
}
catch (Exception ex)
{
    // Unable to turn on/off flashlight
}

Besonderheiten bei der plattformspezifischen ImplementierungPlatform Implementation Specifics

Die Klasse „Flashlight“ wurde auf Basis des Betriebssystems des Geräts optimiert.The Flashlight class has been optimized based on the device's operating system.

API-Ebene 23 und höherAPI Level 23 and Higher

Auf neueren API-Ebenen wird der TorchMode (Taschenlampenmodus) verwendet, um die Blitzlichteinheit des Geräts zu aktivieren bzw. zu deaktivieren.On newer API levels, Torch Mode will be used to turn on or off the flash unit of the device.

API-Ebene 22 und niedrigerAPI Level 22 and Lower

Zum Aktivieren oder Deaktivieren des FlashMode (Blitzlichtmodus) der Kameraeinheit wird eine Kameraoberflächentextur erstellt.A camera surface texture is created to turn on or off the FlashMode of the camera unit.

APIAPI