Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menjelaskan cara menggunakan antarmuka .NET Multi-platform App UI (.NET MAUI). IFlashlight Dengan antarmuka ini, Anda dapat mengaktifkan dan menonaktifkan lampu kilat kamera perangkat, untuk meniru senter.
Implementasi IFlashlight
default antarmuka tersedia melalui Flashlight.Default properti . IFlashlight
Antarmuka dan Flashlight
kelas terkandung dalam Microsoft.Maui.Devices
namespace layanan.
Mulai
Untuk mengakses fungsionalitas senter, diperlukan penyiapan khusus platform berikut.
Ada dua izin untuk dikonfigurasi dalam proyek Anda: Flashlight
dan Camera
. Izin ini dapat diatur dengan cara berikut:
Tambahkan izin berbasis rakitan:
Buka file Platforms/Android/MainApplication.cs dan tambahkan atribut assembly berikut setelah
using
direktif:[assembly: UsesPermission(Android.Manifest.Permission.Flashlight)] [assembly: UsesPermission(Android.Manifest.Permission.Camera)]
- atau -
Perbarui Manifes Android:
Buka file Platforms/Android/AndroidManifest.xml dan tambahkan yang berikut ini di simpul
manifest
:<uses-permission android:name="android.permission.FLASHLIGHT" /> <uses-permission android:name="android.permission.CAMERA" />
- atau -
Perbarui Manifes Android di editor manifes:
Di Visual Studio klik dua kali pada file Platforms/Android/AndroidManifest.xml untuk membuka editor manifes Android. Kemudian, di bawah Izin yang diperlukan, periksa izin FLASHLIGHT dan KAMERA . Ini akan secara otomatis memperbarui file AndroidManifest.xml .
Jika Anda menetapkan izin ini, Google Play akan secara otomatis memfilter perangkat tanpa perangkat keras tertentu. Anda dapat mengatasi pemfilteran ini dengan menambahkan atribut rakitan berikut ke file Platforms/Android/MainApplication.cs setelah using
direktif:
[assembly: UsesFeature("android.hardware.camera", Required = false)]
[assembly: UsesFeature("android.hardware.camera.autofocus", Required = false)]
Gunakan Senter
Senter dapat dihidupkan dan dimatikan melalui TurnOnAsync() metode dan TurnOffAsync() . Contoh kode berikut mengikat status senter aktif atau nonaktif ke Switch kontrol:
private async void FlashlightSwitch_Toggled(object sender, ToggledEventArgs e)
{
try
{
if (FlashlightSwitch.IsToggled)
await Flashlight.Default.TurnOnAsync();
else
await Flashlight.Default.TurnOffAsync();
}
catch (FeatureNotSupportedException ex)
{
// Handle not supported on device exception
}
catch (PermissionException ex)
{
// Handle permission exception
}
catch (Exception ex)
{
// Unable to turn on/off flashlight
}
}
Selain itu, IsSupportedAsync metode ini dapat dipanggil untuk memeriksa apakah senter tersedia di perangkat, sebelum memanggil TurnOnAsync() metode .
Perbedaan platform
Bagian ini menjelaskan perbedaan khusus platform dengan senter.
Kelas Flashlight
telah dioptimalkan berdasarkan sistem operasi perangkat.
API level 23 dan yang lebih tinggi
Pada tingkat API yang lebih baru, Mode Obor akan digunakan untuk menyalakan atau mematikan unit lampu kilat perangkat.
API level 22 dan yang lebih rendah
Tekstur permukaan kamera dibuat untuk menyalakan atau mematikan FlashMode
unit kamera.