Xamarin表示QR码扫描仪空白屏幕

时间:2016-01-06 01:30:18

标签: android xamarin qr-code zxing xamarin-forms

我有一个Xamarin Forms 2.0应用程序,它使用ZXing.Net.Mobile和ZXing.Net.Mobile.Forms版本2.0.3.1。我正在尝试构建一个简单的二维码扫描器,但每当我在Android上启动ZXingScannerPage时,我都可以看到默认的叠加层(带有文字和红线),但我没有看到相机的输出,所以我实际上无法扫描任何东西。我已在AndroidManifest中列出了Camera权限:

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

我尝试了自述文件中的示例代码:https://github.com/Redth/ZXing.Net.Mobile以及他们的Samples / Forms项目。我现在有了这段代码:

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。

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

1 个答案:

答案 0 :(得分:2)

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

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