MVBarcodeReader
A Barcode scanner library for Android. Uses the Google Play Services' mobile vision api for barcode detection.
Install / Use
/learn @Credntia/MVBarcodeReaderREADME
MVBarcodeReader
A Barcode scanning library for Android. Uses the Google Play Services' mobile vision api for barcode detection.
Setup
Maven
<dependency>
<groupId>online.devliving</groupId>
<artifactId>mvbarcodereader</artifactId>
<version>LATEST_VERSION</version>
<type>pom</type>
</dependency>
Gradle
compile 'online.devliving:mvbarcodereader:LATEST_VERSION'
Add following dependencies to your app's gradle file
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.google.android.gms:play-services-basement:11.0.1'
compile 'com.google.android.gms:play-services-vision:11.0.1'
compile 'com.android.support:design:25.3.1'
compile 'com.android.support:support-annotations:25.3.1'
Usage
Scanning Modes
SINGLE_AUTO: The fastest mode. Returns the first barcode it can detect as soon as possible.SINGLE_MANUAL: Detects and highlights all the barcode it can find but returns only the one that user chooses by tapping.MULTIPLE: Detects and highlights all the barcode it can find. Returns all the barcodes on tap.
Barcode Types
You can view this link for a list of supported barcode formats.
Use the standalone scanner
launch the scanner from your Activity like this:
new MVBarcodeScanner.Builder()
.setScanningMode(mMode)
.setFormats(mFormats)
.build()
.launchScanner(this, REQ_CODE);
You'll receive the scanned barcode/barcodes in your Activity's onActivityResult
if (requestCode == REQ_CODE) {
if (resultCode == RESULT_OK && data != null
&& data.getExtras() != null) {
if (data.getExtras().containsKey(MVBarcodeScanner.BarcodeObject)) {
Barcode mBarcode = data.getParcelableExtra(MVBarcodeScanner.BarcodeObject);
} else if (data.getExtras().containsKey(MVBarcodeScanner.BarcodeObjects)) {
List<Barcode> mBarcodes = data.getParcelableArrayListExtra(MVBarcodeScanner.BarcodeObjects);
}
}
}
Use the scanner fragment
You can use the BarcodeCaptureFragment to scan barcodes. Just add the fragment to your Activity
MVBarcodeScanner.ScanningMode mode = null;
@MVBarcodeScanner.BarCodeFormat int[] formats = null;
BarcodeCaptureFragment fragment = BarcodeCaptureFragment.instantiate(mode, formats);
getSupportFragmentManager().beginTransaction()
.add(R.id.container, fragment)
.commit();
Then make the the Activity implement the BarcodeCaptureFragment.BarcodeScanningListener so that you can receive results from the fragment or you can set the listener directly to the fragment
fragment.setListener(new BarcodeCaptureFragment.BarcodeScanningListener() {
@Override
public void onBarcodeScanned(Barcode barcode) {
}
@Override
public void onBarcodesScanned(List<Barcode> barcodes) {
}
@Override
public void onBarcodeScanningFailed(String reason) {
}
});
Related Skills
node-connect
349.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.7kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
