Ich verwende camera.maui.zxing und camera.maui in meinem .net maui -Projekt.private async void InitializeCamera()
{
// barcode detection
cameraView.BarcodeDetected += Camera_OnDetected;
// Inicializar ZXing Barcode Decoder
cameraView.BarCodeDecoder = new ZXingBarcodeDecoder();
// Configurar las opciones del decodificador de códigos de barras
cameraView.BarCodeOptions = new BarcodeDecodeOptions
{
AutoRotate = true,
PossibleFormats = { BarcodeFormat.QR_CODE },
ReadMultipleCodes = false,
TryHarder = true,
TryInverted = true
};
// Configurar otras opciones de detección
cameraView.BarCodeDetectionFrameRate = 10;
cameraView.BarCodeDetectionMaxThreads = 5;
cameraView.ControlBarcodeResultDuplicate = true;
cameraView.BarCodeDetectionEnabled = true;
// Iniciar la cámara de forma asíncrona
if (cameraView.NumCamerasDetected > 0)
{
//if (cameraView.NumMicrophonesDetected > 0)
// cameraView.Microphone = cameraView.Microphones.First();
cameraView.Camera = cameraView.Cameras.FirstOrDefault();
MainThread.BeginInvokeOnMainThread(async () =>
{
if (await cameraView.StartCameraAsync() == CameraResult.Success)
{
playing = true;
}
});
}
else
await DisplayAlert("Warning", "No cameras detected.", "OK");
}
protected override async void OnAppearing()
{
base.OnAppearing();
// Verificar el estado del permiso de la cámara
var cameraStatus = await Permissions.CheckStatusAsync
();
if (cameraStatus != PermissionStatus.Granted)
{
var results = await Permissions.RequestAsync();
if (results != PermissionStatus.Granted)
{
await Application.Current.MainPage.DisplayAlert("Permisos de cámara", "Los permisos de la cámara han sido denegados, active manualmente los permisos para usar esta funcionalidad", "OK");
return;
}
}
// Inicializar la cámara después de obtener los permisos
InitializeCamera();
}
private async void Camera_OnDetected(object sender, Camera.MAUI.ZXingHelper.BarcodeEventArgs e)
{
string result = e.Result[0].Text;
if (result is null) return;
if (viewModel.ValidaCodigo(result))
{
// Navegar a la página de inicio
Shell.Current.GoToAsync("//HomePage");
//await StopCameraAsync();
}
}
< /code>
Das Problem, das ich habe, ist die Initializecamera, wenn ich die Bedingung zur Erkennung der Kameras (numcamerasdetiert) mache, wenn ich die Ansicht eingehe und die Berechtigungen annehme. sie.
Gibt es eine Möglichkeit, die 4 Kameras zu aktualisieren oder nicht zu verlieren?
Camera.maui.zxing (.net 8) Die Funktion erkennt meine Kameras nicht ⇐ Android
-
- Similar Topics
- Replies
- Views
- Last post