Reading barcodes with android

2019-01-29 20:53发布

问题:

Hi I am developing an application for the android htc hero. I am looking into ways of using the inbuilt camer to read 2D barcodes and extract the string returned from the barcode. I have only recently begun working with the android sdk but I do have a programming background from working on projects with java. I am curious to know what the best way to read the 2D barcode would be. I have some sample applications that read the barcode but they are all .apk files and have no source or library that i can work with. to give you a better idea of what i am trying to accomplish this site allows the generation of 2d barcodes made up of the data you desire here

Any replies would be greatly appreciated.

回答1:

Android programs can interact with eachother using intents. Intents are a little like remote procedure calls: you ask the other program for a certain action (e.g. scan a barcode) and the other program will perform this task for you. The result is returned when the task is complete.

If the user has installed the ZXing Barcode Scanner, you can just use an intent to scan a barcode. The Barcode Scanner will then start, let the user scan the code and return the result to you.

More information about this scanner can be found on the Google Code page of this project: http://code.google.com/p/zxing/wiki/ScanningViaIntent



回答2:

I'd look at this open source Android project: http://code.google.com/p/zxing/



回答3:

For fellow Google search travelers, there is a 2012 post on the android developers blog on how to use intents with the example of barcode scanning :

http://android-developers.blogspot.com/2012/02/share-with-intents.html



回答4:

As far as I know for decoding barcodes (apart from the algorithm) you need to know the (relative) widths of white and black bars. For that, you would have to rotate the barcode to a horizontal position and then detect the widths.

(Ok, the ZXIng stuff advised by others outperforms this manual hacking)