2016-01-06 81 views
1

我有一个使用ZXing.Net.Mobile和ZXing.Net.Mobile.Forms版本2.0.3.1的Xamarin Forms 2.0应用程序。我试图构建一个简单的QR码扫描器,但每当我在Android上启动ZXingScannerPage时,我都可以看到默认叠加层(带有文本和红线),但我没有看到相机的输出,因此我可以'实际上扫描任何东西。我已经列出的摄像头权限在我AndroidManifest:从他们的样品/表格项目https://github.com/Redth/ZXing.Net.Mobile还有:Xamarin Forms QR代码扫描器空白屏幕

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

我试图从自述文件中的示例代码。我现在有这样的代码:

private async void OnScanQrClicked(object sender, EventArgs e) 
{ 
    _scannerPage = new ZXingScannerPage(); 
    _scannerPage.OnScanResult += HandleScanResult; 

    await Navigation.PushAsync(_scannerPage); 
} 

private void HandleScanResult(Result result) 
{ 
    _scannerPage.IsScanning = false; 

    Device.BeginInvokeOnMainThread(() => 
    { 
     Navigation.PopAsync(); 
     DisplayAlert("Scanned code", result.Text, "OK"); 
    }); 
} 

更多规格:我在Moto G(v1)上运行Android 5.1。

为什么我没有看到相机的输出?

回答

2

我通过摆脱ZXing.Net.Mobile.Forms并将ZXing.Net.Mobile从2.0降级到1.5来修复它。我必须改变我的实现,但这相对容易。

未来人们可能会看到的另一件事(我没有尝试)是添加手电筒权限:https://github.com/Redth/ZXing.Net.Mobile/issues/227