用安卓读取条码
Posted
技术标签:
【中文标题】用安卓读取条码【英文标题】:Reading barcodes with android 【发布时间】:2011-01-15 11:15:47 【问题描述】:您好,我正在为 android htc hero 开发一个应用程序。我正在研究使用内置摄像头读取二维条码并提取从条码返回的字符串的方法。我最近才开始使用 android sdk,但我确实有使用 java 进行项目的编程背景。我很想知道读取二维条码的最佳方式是什么。我有一些读取条形码的示例应用程序,但它们都是 .apk 文件,没有我可以使用的源或库。为了让您更好地了解我要完成的工作,该站点允许生成由您想要的数据组成的二维条码here
任何回复将不胜感激。
【问题讨论】:
【参考方案1】:Android 程序可以使用 Intent 相互交互。 Intent 有点像远程过程调用:您要求其他程序执行某个操作(例如扫描条形码),然后其他程序将为您执行此任务。任务完成后返回结果。
如果用户已经安装了 ZXing Barcode Scanner,您可以使用 Intent 来扫描条码。条码扫描器将启动,让用户扫描代码并将结果返回给您。
关于这个扫描仪的更多信息可以在这个项目的谷歌代码页面上找到:http://code.google.com/p/zxing/wiki/ScanningViaIntent
【讨论】:
这里有一个文档,它解释了如何以编程方式测试可以处理意图的活动:developer.android.com/resources/articles/…,如果您想指导用户下载条形码扫描仪应用程序,这个文档有一个要使用的 URI 概述:developer.android.com/guide/publishing/… 有没有办法将 Zxing 集成到我的 android 应用程序中,这样用户就不必单独安装 Zxing BarCode Scanner? 我想使用内置 G 传感器进行扫描,而不是使用相机。当我们想使用手机摄像头进行扫描时,Zxing 是非常有用的库。我正在使用提供内置激光扫描仪的 iData95E 设备。任何人都可以帮助我。 @AKh 这可能有助于使用 Zxing another post 构建您自己的客户端【参考方案2】:我会看看这个开源 Android 项目:http://code.google.com/p/zxing/
【讨论】:
我已经检查过了,但是如何在我的应用程序中集成这个 api 我想在我的应用程序中读取条形码和返回值【参考方案3】:对于 Google 搜索同行,2012 年在 android 开发者博客上有一篇关于如何使用带有条形码扫描示例的意图的帖子:
http://android-developers.blogspot.com/2012/02/share-with-intents.html
【讨论】:
【参考方案4】:据我所知,要解码条形码(除了算法),您需要知道白条和黑条的(相对)宽度。为此,您必须将条形码旋转到水平位置,然后检测宽度。
(好吧,其他人建议的 ZXIng 东西胜过这种手动黑客)
【讨论】:
这不是必需的:只要你可以在所有条形之间画一条水平线,条码就不必是水平的 - 条形的绝对数字会更宽,但相对宽度条和空格的数量将保持不变。换言之,您甚至可以正确扫描旋转或倾斜的条码。以上是关于用安卓读取条码的主要内容,如果未能解决你的问题,请参考以下文章