0
0
mirror of https://github.com/markusfisch/BinaryEye.git synced 2024-09-19 19:42:18 +02:00
Yet another barcode scanner for Android
Go to file
Markus Fisch 8424e3ea31 Add Bluetooth permissions to PRIVACY
And explain why these are required.
2023-03-27 22:05:31 +02:00
app Add legacy Bluetooth permissions for SDK < 12 2023-03-27 22:02:09 +02:00
fastlane/metadata/android Losslessly compress PNG images 2023-03-01 21:29:50 +01:00
gradle/wrapper Update gradle wrapper 2023-03-15 20:53:18 +01:00
svg Fix design of monochrome launcher icon 2023-01-30 18:41:56 +01:00
.gitignore Add gradle.properties to repository 2019-11-14 12:58:43 +01:00
build.gradle Update Kotlin version 2023-03-15 20:52:58 +01:00
CHANGELOG.md Advance version number to 1.59.0 2023-02-22 18:37:57 +01:00
CONTRIBUTING.md Update link on how to write a good commit message 2022-12-21 16:09:56 +01:00
gradle.properties Remove enableR8=true from gradle.properties 2021-08-13 09:51:12 +02:00
gradlew Upgrade gradle wrapper 2022-01-18 21:37:24 +01:00
gradlew.bat Upgrade gradle wrapper 2022-01-18 21:37:24 +01:00
LICENSE Added a license 2017-08-27 16:30:32 +02:00
Makefile Migrate to ZXing-C++ 2022-10-09 18:46:50 +02:00
PRIVACY.md Add Bluetooth permissions to PRIVACY 2023-03-27 22:05:31 +02:00
README.md Remove META parameter from README 2023-01-16 20:20:44 +01:00
settings.gradle Include CameraView library over jitpack 2018-03-01 14:34:45 +01:00

Binary Eye

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

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++ ("Zebra Crossing") barcode scanning library.

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:

Generate

ZXing can generate the following barcode formats:

You can invoke Binary Eye with a web URI intent from anything that can open URIs. There are two options:

  1. binaryeye://scan
  2. http(s)://markusfisch.de/BinaryEye

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

SCAN Intent

You can also use Binary Eye from other apps by using the com.google.zxing.client.android.SCAN Intent with startActivityForResult() like this:

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

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

override fun onActivityResult(
	requestCode: Int,
	resultCode: Int,
	data: Intent?
) {
	when (requestCode) {
		SOME_NUMBER -> if (resultCode == RESULT_OK) {
			val result = data.getStringExtra("SCAN_RESULT")
			
		}
	}
}

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

class YourActivity : Activity() {
	private val resultLauncher = registerForActivityResult(StartActivityForResult()) { result ->
		if (result.resultCode == Activity.RESULT_OK) {
			val scan = result.data?.getStringExtra("SCAN_RESULT")
			
		}
	}

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