markusfisch
BinaryEye
Kotlin

Yet another barcode scanner for Android

Last updated Jul 7, 2026
2.3k
Stars
172
Forks
174
Issues
+6
Stars/day
Attention Score
93
Language breakdown
No language data available.
โ–ธ Files click to expand
README

Binary Eye

Yet another barcode scanner for Android. As if there weren't [enough][play].

This one is free, without any ads, and open source.

Works in portrait and landscape orientation, can read inverted codes, comes in Material Design and can also generate barcodes.

Binary Eye uses the [ZXing-C++][zxing_cpp] ("Zebra Crossing") barcode scanning library.

If you find this app useful and wish to support its continued development, you can buy me a coffee or send some Bitcoin decimals to bc1q2guk2rpll587aymrfadkdtpq32448x5khk5j8z.

Buy Me A Coffee Liberapay Ko-fi

Screenshots

Screenshot Gallery Screenshot Gallery Screenshot Theme Screenshot Editor

Download

Get it on F-Droid Get it on Google Play

Supported Barcode Formats

Read

ZXing can read the following barcode formats:

  • [AZTEC][aztec]
  • [CODABAR][codabar]
  • [CODE 39][code_39]
  • [CODE 93][code_93]
  • [CODE 128][code_128]
  • [DATA MATRIX][data_matrix]
  • [DX FILM EDGE][dxfilmedge]
  • [EAN 8][ean_8]
  • [EAN 13][ean_13]
  • [ITF][itf]
  • [MAXICODE][maxicode] (partial)
  • [PDF417][pdf417]
  • [Telepen][telepen]
  • [QR CODE][qr_code]
  • [Micro QR Code][microqrcode]
  • [rMQR Code][rmqr_code]
  • [RSS 14][rss]
  • [RSS EXPANDED][rss]
  • [UPC A][upc_a]
  • [UPC E][upc_e]
  • [UPC EAN EXTENSION][upc_ean]

Generate

ZXing can generate the following barcode formats:

  • [AZTEC][aztec]
  • [CODABAR][codabar]
  • [CODE 39][code_39]
  • [CODE 128][code_128]
  • [DATA MATRIX][data_matrix]
  • [EAN 8][ean_8]
  • [EAN 13][ean_13]
  • [ITF][itf]
  • [PDF 417][pdf417]
  • [QR CODE][qr_code]
  • [UPC A][upc_a]

Deep Links

You can invoke Binary Eye with a web URI intent from anything that can open URIs.

Decoding

If you want to get the scanned contents, you can add a ret query argument with a (URL encoded) URI template. For example:

http://markusfisch.de/BinaryEye?ret=http%3A%2F%2Fexample.com%2F%3Fresult%3D{RESULT}

Supported symbols are:

  • RESULT - scanned content
  • RESULT_BYTES - raw result as a hex string
  • FORMAT - barcode format

Encoding

You can use the URL arguments content and format to automatically preset this data. For example: If you want the code to be generated immediately, add execute=true (or just execute).

Intents

You can also use Binary Eye from other apps by using an [Intent][intent].

If you prefer to integrate a barcode scanner into your app, take a look at [BarcodeScannerView][barcodescannerview] (if you also want to use [ZXing-C++][zxing_cpp]) or read how to [scan barcodes with ML Kit on Android][mlkitbarcodescanning].

SCAN Intent

Use the com.google.zxing.client.android.SCAN Intent with [startActivityForResult()][start_activity] like this:

startActivityForResult(
	Intent("com.google.zxing.client.android.SCAN"),
	SOME_NUMBER
)

And process the result in [onActivityResult()][onactivityresult] of your Activity:

override fun onActivityResult(
	requestCode: Int,
	resultCode: Int,
	data: Intent?
) {
	when (requestCode) {
		SOMENUMBER -> if (resultCode == RESULTOK) {
			val result = data.getStringExtra("SCAN_RESULT")
			โ€ฆ
		}
	}
}

If you're using AndroidX, this would be the new, [recommended way][intent_result]:

class YourActivity : AppCompatActivity() {
	private val resultLauncher = registerForActivityResult(
		ActivityResultContracts.StartActivityForResult()
	) { result ->
		if (result.resultCode == RESULT_OK) {
			val content = result.data?.getStringExtra("SCAN_RESULT")
			โ€ฆ
		}
	}

fun openScanner() { resultLauncher.launch(Intent("com.google.zxing.client.android.SCAN")) } }

Forwarding scans via Bluetooth

Note: The companion apps aren't developed nor maintained by the author of Binary Eye.

In order to set up Bluetooth forwarding to a computer:

  • Pair your devices (phone and pc) if not paired already
  • Download and run a companion app:
- Windows: https://github.com/KamaleiZestri/BinaryReceptor - Linux: https://github.com/sean666888/bineyebt_receiver
  • In the settings of Binary Eye, enable "Forward scans with Bluetooth"
and select the appropriate target host device that is running the companion application.

[play]: https://play.google.com/store/search?q=barcode%20scanner&c=apps [zxing_cpp]: https://github.com/zxing-cpp/zxing-cpp [kotlin]: http://kotlinlang.org/ [aztec]: https://en.wikipedia.org/wiki/Aztec_Code [codabar]: https://en.wikipedia.org/wiki/Codabar [code39]: https://en.wikipedia.org/wiki/Code39 [code93]: https://en.wikipedia.org/wiki/Code93 [code128]: https://en.wikipedia.org/wiki/Code128 [datamatrix]: https://en.wikipedia.org/wiki/DataMatrix [dxfilmedge]: https://en.wikipedia.org/wiki/DX_encoding [ean_8]: https://en.wikipedia.org/wiki/EAN-8 [ean13]: https://en.wikipedia.org/wiki/InternationalArticle_Number [itf]: https://en.wikipedia.org/wiki/Interleaved2of_5 [maxicode]: https://en.wikipedia.org/wiki/MaxiCode [pdf417]: https://en.wikipedia.org/wiki/PDF417 [telepen]: https://en.wikipedia.org/wiki/Telepen [qrcode]: https://en.wikipedia.org/wiki/QRcode [microqrcode]: https://en.wikipedia.org/wiki/QRcode#MicroQR_code [rmqr_code]: https://www.qrcode.com/en/codes/rmqr.html [rss]: https://en.wikipedia.org/wiki/GS1_DataBar [upca]: https://en.wikipedia.org/wiki/UniversalProduct_Code [upce]: https://en.wikipedia.org/wiki/UniversalProduct_Code#UPC-E [upcean]: https://en.wikipedia.org/wiki/UniversalProduct_Code#EAN-13 [intent]: https://developer.android.com/reference/android/content/Intent [barcodescannerview]: https://github.com/markusfisch/BarcodeScannerView [mlkitbarcodescanning]: https://developers.google.com/ml-kit/vision/barcode-scanning/android [start_activity]: https://developer.android.com/reference/android/app/Activity#startActivityForResult(android.content.Intent,%20int) [onactivityresult]: https://developer.android.com/reference/android/app/Activity#onActivityResult(int,%20int,%20android.content.Intent) [intent_result]: https://developer.android.com/training/basics/intents/result

ยฉ 2026 GitRepoTrend ยท markusfisch/BinaryEye ยท Updated daily from GitHub