C# MobileBardodeScanner在授予摄像头权限后重新启动之前无法扫描QRCode

C# MobileBardodeScanner在授予摄像头权限后重新启动之前无法扫描QRCode,c#,xamarin.forms,zxing.net,C#,Xamarin.forms,Zxing.net,我正在尝试扫描Xamarin.Forms应用程序中的二维码,但在重新启动扫描仪之前,无法检测到二维码 我正在使用ZXing.Net.Mobile.Forms。一旦将扫描页面推到导航堆栈上,它就会请求相机权限。完成请求后,它可以访问摄像头,但不会扫描二维码。我尝试更改权限处理程序,因为它在授予权限后重新启动扫描程序后可以工作,但没有工作 private async void createScanPageAsync() { #如果__ //首先初始化扫描程序,以便它可以跟踪当前上下文 MobileB

我正在尝试扫描Xamarin.Forms应用程序中的二维码,但在重新启动扫描仪之前,无法检测到二维码

我正在使用ZXing.Net.Mobile.Forms。一旦将
扫描页面
推到导航堆栈上,它就会请求相机权限。完成请求后,它可以访问摄像头,但不会扫描二维码。我尝试更改权限处理程序,因为它在授予权限后重新启动扫描程序后可以工作,但没有工作

private async void createScanPageAsync()
{
#如果__
//首先初始化扫描程序,以便它可以跟踪当前上下文
MobileBarcodeScanner.Initialize(应用程序);
#恩迪夫
var options=新的MobileBarcodeScanningOptions()
{
TryHarder=true,
};
var scanPage=new ZXingScannerPage()
{
Title=AppResources.scanPageTitle,
DefaultOverlyTopText=AppResources.scanPageTitle,
DefaultOverlyShowFlashButton=true
};
等待导航。PushAsync(扫描页面);
scanPage.OnScanResult+=(scanResult)=>
{
scanPage.IsScanning=false;
振动;
QRCode scans=JsonConvert.DeserializeObject(scanResult.Text);
AppPreferences.Network.Ip=scans.Ip;
AppPreferences.Network.Port=scans.Port;
Device.beginInvokeMainThread(异步()=>
{
等待导航。PopAsync();
});
};
}
}

第一次尝试的预期结果是扫描成功,但只有在授予权限并重新打开扫描仪页面后,我才获得成功的扫描。

对于我来说,Xamarin.Essentials成功了。它有一个权限插件,可以帮助你请求权限,然后,然后您可以毫无问题地启动扫描仪

在启动扫描仪页面之前,您是否尝试过请求权限?我尝试过使用插件请求权限。权限NuGet软件包,但文档确实过时了,无法正常工作。您能否共享一个基本演示,以便其他人能够更好地帮助您?