Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/180.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 激光扫描_C#_Android_Xamarin_Zxing_Datawedge - Fatal编程技术网

C# 激光扫描

C# 激光扫描,c#,android,xamarin,zxing,datawedge,C#,Android,Xamarin,Zxing,Datawedge,有没有办法强迫ZXing.NET应用程序在设备上使用内置激光扫描仪而不是摄像头?我有一个客户端使用Android TC55扫描条形码,主要要求是使用内置激光扫描条形码。用户根本不希望使用内置摄像头进行扫描 该设备具有DataWedge功能,因此可能有一种方法可以通过这种方式访问扫描仪?如有任何信息,将不胜感激 我担心没有办法,因为ZXing是在Apache下发布的,而TC55只在适当的许可证下提供API(因此ZXing在没有修改的情况下永远不会进行接口)。我编写了一种垫片层的形式,以在原生And

有没有办法强迫ZXing.NET应用程序在设备上使用内置激光扫描仪而不是摄像头?我有一个客户端使用Android TC55扫描条形码,主要要求是使用内置激光扫描条形码。用户根本不希望使用内置摄像头进行扫描


该设备具有DataWedge功能,因此可能有一种方法可以通过这种方式访问扫描仪?如有任何信息,将不胜感激

我担心没有办法,因为ZXing是在Apache下发布的,而TC55只在适当的许可证下提供API(因此ZXing在没有修改的情况下永远不会进行接口)。我编写了一种垫片层的形式,以在原生Android上为ZXing和Zebra API公开一个意图界面,但这不适合您尝试做的事情,因为它不是.NET,需要修改应用程序。

我认为TC55有它的,有它的移植

你可以试着看看这个样品

Android项目的活动使用Profile API配置DataWedge以读取EAN13和CODE128条形码,并发送具有广播目的的数据。此配置分配给活动本身(com.pietromaggi.sample、barcodeForms.MainActivity)

表单使用DependencyService发送DataWedge意图(接口在可移植库中,我只实现了Android端)

实现了一个广播接收器来处理来自DataWedge的意图,该接收器在MainActivity中注册,并在那里注册了一个事件处理程序来处理接收到的数据


事件处理程序使用MessagingCenter将数据发送到表单,以便表单可以显示数据。(如果您需要将数据发送到Xamarin Forms app)

如果设备具有内置扫描仪,则您根本不需要使用ZXing。“tc55 scanner api”带来了一些有趣的点击率。谢谢,我已经把这个选项作为最后的手段。这是一个现有的应用程序,它有几个到ZXing.NET库的挂钩,我希望避免重写。谢谢,我最终使用了Datawedge功能,结果非常完美。