Scandit与设备摩托罗拉XT907-相机没有聚焦
本文关键字:相机 聚焦 XT907- 摩托罗拉 Scandit | 更新日期: 2023-09-27 18:28:30
我正在测试一个将扫描条形码的应用程序。这个应用程序将是跨平台的,所以我正在使用Visual Studio使用Xamarin进行开发。我决定使用Scandit,因为它似乎是Xamarin最好的条形码扫描库。
我遇到的问题是在这个特定的设备上,相机非常模糊,似乎无法自动对焦。正因为如此,我很难正确地扫描任何东西。
手机内置的摄像头应用程序运行良好,对焦效果良好。其他条形码应用程序似乎也能很好地集中注意力。我在另一台安卓设备上试用了我的应用程序,效果很好。它似乎是这个特定设备和Scandit的结合。
正在扫描的条形码的类型将全部为代码128。我禁用了所有其他类型,这似乎有很大帮助,但扫描起来仍然很困难。
这是我的代码:
public class MainActivity : Activity, Scandit.Interfaces.IScanditSDKListener
{
private ScanditSDKBarcodePicker picker;
const string APP_KEY = "it's a secret.";
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
SetContentView(Resource.Layout.Main);
Button button = FindViewById<Button>(Resource.Id.MyButton);
button.Click += delegate
{
picker = new ScanditSDKBarcodePicker(this, APP_KEY);
picker.OverlayView.AddListener(this);
picker.SetCode39Enabled(false);
picker.SetCode93Enabled(false);
picker.SetEan13AndUpc12Enabled(false);
picker.SetEan8Enabled(false);
picker.SetUpceEnabled(false);
picker.SetItfEnabled(false);
picker.SetMsiPlesseyEnabled(false);
picker.SetGS1DataBarEnabled(false);
picker.SetGS1DataBarExpandedEnabled(false);
picker.SetQrEnabled(false);
picker.SetDataMatrixEnabled(false);
picker.SetPdf417Enabled(false);
picker.SetCodabarEnabled(false);
picker.StartScanning();
SetContentView(picker);
};
}
public void DidScanBarcode(string barcode, string symbology)
{
Toast.MakeText(this, string.Format("barcode scanned: {0}, '{1}'", symbology, barcode), ToastLength.Long).Show();
}
public void DidCancel()
{
Toast.MakeText(this, "Cancel was pressed.", ToastLength.Long).Show();
}
public void DidManualSearch(string text)
{
Toast.MakeText(this, "Search was used. " + text, ToastLength.Long).Show();
}
}
原来这是Xamarin的Scandit库的一个错误。我给开发人员发了电子邮件,他们告诉我应该在下一个版本中进行修复,他们说下一版本将于11月中旬发布。我下载了他们最新的Scandit演示应用程序,它刚刚更新,现在运行良好。
因此,当Scandit 4.3公开时,应该修复这个问题。