Last updated:
0 purchases
henry capture vision flutter
Dynamsoft Capture Vision Flutter Edition #
Dynamsoft Capture Vision (DCV) is an aggregating SDK of a series of specific functional products including:
Dynamsoft Camera Enhancer (DCE) which provides camera enhancements and UI configuration APIs.
Dynamsoft Barcode Reader (DBR) which provides barcode decoding algorithm and APIs.
Dynamsoft Label Recognizer (DLR) which provides label content recognizing algorithm and APIs.
Dynamsoft Document Normalizer (DDN) which provides document scanning algorithms and APIs.
Note: DCV Flutter edition currently only includes DCE and DBR modules. DLR and DDN modules are still under development and will be included in the future.
Table of Contents
System Requirements
Installation
Build Your Barcode Scanner App
Set up Development Environment
Initialize the Project
Include the Library
License Activation
Configure the Barcode Reader
Build the Widget
Configure Camera Permissions
Run the Project
Samples
API References
License
Contact
System Requirements #
Flutter & Dart #
Flutter version: >=2.0.0
Dart version: >=2.12.0 <3.0.0
Android #
Supported OS: Android 5.0 (API Level 21) or higher.
Supported ABI: armeabi-v7a, arm64-v8a, x86 and x86_64.
Development Environment: Android Studio 3.4+ (Android Studio 4.2+ recommended).
JDK: 1.8+
iOS #
Supported OS: iOS 10.0 or higher.
Supported ABI: arm64 and x86_64.
Development Environment: Xcode 7.1 and above (Xcode 13.0+ recommended), CocoaPods 1.11.0+.
Installation #
Run the following command:
flutter pub add dynamsoft_capture_vision_flutter
copied to clipboard
This will add a line like this to your package's pubspec.yaml (and run an implicit flutter pub get):
dependencies:
dynamsoft_capture_vision_flutter: ^1.0.0
copied to clipboard
Build Your Barcode Scanner App #
Now you will learn how to create a simple barcode scanner using Dynamsoft Capture Vision Flutter SDK.
Set up Development Environment #
If you are a beginner with Flutter, please follow the guide on the Flutter official website to set up the development environment.
Initialize the Project #
Create a new Flutter project
flutter create simple_barcode_scanner
copied to clipboard
Include the Library #
View the installation section for how to add the library. In main.dart of your project, import the library.
import 'package:dynamsoft_capture_vision_flutter/dynamsoft_capture_vision_flutter.dart';
copied to clipboard
License Activation #
The barcode reading module of Dynamsoft Capture Vision needs a valid license to work. In the main() function, add the following code to activate the license.
void main() async {
WidgetsFlutterBinding.ensureInitialized();
// Put your Dynamsoft Barcode Reader license here.
const String licenseKey = '';
// Initialize the license so that you can use full feature of the Barcode Reader module.
try {
await DynamsoftBarcodeReader.initLicense(license: licenseKey);
} catch (e) {
print(e);
}
runApp(const MyApp());
}
copied to clipboard
Configure the Barcode Reader #
In this section, we are going to work on the _MyHomePageState class in the newly created project to add the barcode decoding feature.
Add the following instance variables:
class _MyHomePageState extends State<MyHomePage> {
late final DynamsoftBarcodeReader _barcodeReader;
final DynamsoftCameraView _cameraView = DynamsoftCameraView();
List<BarcodeResult> decodeResults = [];
}
copied to clipboard
barcodeReader: The object that implements barcode decoding feature. Users can configure barcode decoding settings via this object.
cameraView: The camera view that displays the video streaming.
decodeResults: An object that will be used to receive and stores barcode decoding result.
Add _configDBR method to initialize the barcode reader:
class _MyHomePageState extends State<MyHomePage> {
...
@override
void initState() {
super.initState();
_configDBR();
}
_configDBR() async {
/// Create an instance of barcode reader.
_barcodeReader = await DynamsoftBarcodeReader.createInstance();
/// Receive the barcode decoding results and store the result in object decodeResults
_barcodeReader.receiveResultStream().listen((List<BarcodeResult> res) {
if (mounted) {
setState(() {
decodeResults = res;
});
}
});
/// Start barcode decoding when the widget is created.
_barcodeReader.startScanning();
/// When overlayVisible is set to true, the decoded barcodes will be highlighted with overlays.
_cameraView.overlayVisible = true;
}
}
copied to clipboard
Add configurations to parse and display the barcode decoding results:
class _MyHomePageState extends State<MyHomePage> {
...
/// Get listItem
Widget listItem(BuildContext context, int index) {
BarcodeResult res = decodeResults[index];
return ListTileTheme(
textColor: Colors.white,
// tileColor: Colors.green,
child: ListTile(
title: Text(res.barcodeFormatString),
subtitle: Text(res.barcodeText),
));
}
}
copied to clipboard
Build the Widget #
Modify the build method to display the decode barcode results on the widget.
class _MyHomePageState extends State<MyHomePage> {
...
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('HelloWorld'),
),
body: Stack(
children: [
Container(
child: _cameraView,
),
Container(
height: 200,
child: ListView.builder(
itemBuilder: listItem,
itemCount: decodeResults.length,
),
),
],
));
}
}
copied to clipboard
Configure Camera Permissions #
Before you run the project on iOS devices, you have to add the camera permission first.
In the project folder, go to file ios/Runner/info.plist, add the following code for requesting camera permission.
<plist version="1.0">
<dict>
...
<key>NSCameraUsageDescription</key>
<string>Request your authorization.</string>
...
</dict>
copied to clipboard
Run the Project #
Run Android on Windows
Go to the file build.gradle(app), update the minSdkVersion to 21.
android {
defaultConfig {
...
minSdkVersion 21
...
}
}
copied to clipboard
In the root of your project run the following command to build and install the app:
flutter run
copied to clipboard
Run iOS on macOS
Go to the podfile in ios folder and add the following code at the top of the file:
platform:ios, '10.0'
copied to clipboard
In the root of your project run the following command to build and install the app:
flutter run
copied to clipboard
Samples #
You can view all the DCV Flutter samples via the following links:
Barcode reader simple sample
API References #
View the API reference of DCV Flutter Edition to explore the full feature of DCV:
DCV API Reference - Flutter Edition
DynamsoftBarcodeReader Class
DynamsoftCameraEnhancer Class
License #
You can also request an extension for your trial license in the customer portal
Contact #
https://www.dynamsoft.com/company/contact/
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.