|
1 | 1 | --- |
2 | 2 | layout: default-layout |
3 | 3 | title: Dynamsoft Barcode Reader Android API Reference - Main Page |
4 | | -description: This is the main page of Dynamsoft Barcode Reader SDK API Reference for Android Language. |
| 4 | +description: Main API reference page for Dynamsoft Barcode Reader SDK for Android. |
5 | 5 | keywords: BarcodeReader, api reference, Android |
6 | 6 | --- |
7 | 7 |
|
8 | 8 | # SDK Overview: Modules and Main APIs |
9 | 9 |
|
10 | | -This page provides an overview of the various modules and highlights the most essential APIs that form the backbone of Dynamsoft Barcode Reader SDK. |
| 10 | +This page summarizes the SDK modules and core APIs of Dynamsoft Barcode Reader. |
11 | 11 |
|
12 | 12 | ## Modules Summary |
13 | 13 |
|
14 | | -The Dynamsoft Barcode Reader (DBR) SDK is built on the Dynamsoft Capture Vision (DCV) framework, which includes multiple modules working together to achieve barcode reading. The hierarchical structure diagram below illustrates the various modules of the DBR SDK (with modules at the top depending on those below). |
15 | | - |
16 | | -The table below describes details the functionalities of these modules: |
17 | | - |
| 14 | +Dynamsoft Barcode Reader (DBR) SDK is built on the Dynamsoft Capture Vision (DCV) architecture. |
| 15 | + |
| 16 | +<style> |
| 17 | + svg { |
| 18 | + max-width: 100%; |
| 19 | + height: auto; |
| 20 | + } |
| 21 | + |
| 22 | + .clickable { |
| 23 | + fill: transparent; |
| 24 | + cursor: pointer; |
| 25 | + } |
| 26 | + |
| 27 | + .clickable:hover { |
| 28 | + fill: rgba(0, 123, 255, 0.2); |
| 29 | + stroke: #007bff; |
| 30 | + stroke-width: 2; |
| 31 | + } |
| 32 | +</style> |
18 | 33 | <svg viewBox="0 0 1397 768"> |
19 | 34 | <image href="../../assets/architecture-cvr.png" width="1397" height="768"/> |
20 | 35 | <a href="{{ site.dce_android }}primary-api/camera-enhancer.html"> |
@@ -49,43 +64,49 @@ The table below describes details the functionalities of these modules: |
49 | 64 | </a> |
50 | 65 | </svg> |
51 | 66 |
|
52 | | - |
53 | | - |
54 | | -| Module | Description | |
55 | | -|:-------|:------------| |
56 | | -| `DynamsoftBarcodeReader`(DBR) | The Dynamsoft Barcode Reader module recognizes and decodes multiple barcode formats such as QR codes, Code 39, Code 128, and Data Matrix, among many others. | |
57 | | -| `DynamsoftCore`(Core) | The Dynamsoft Core module lays the foundation for Dynamsoft SDKs based on the DCV (Dynamsoft Capture Vision) architecture. It encapsulates the basic classes, interfaces, and enumerations shared by these SDKs. | |
58 | | -| `DynamsoftCaptureVisionRouter`(CVR) | The Dynamsoft Capture Vision Router module is the cornerstone of the Dynamsoft Capture Vision (DCV) architecture. It focuses on coordinating batch image processing and provides APIs for setting up image sources and result receivers, configuring workflows with parameters, and controlling processes. | |
59 | | -| `DynamsoftLicense`(License) | The Dynamsoft License module manages the licensing aspects of Dynamsoft SDKs based on the DCV (Dynamsoft Capture Vision) architecture. | |
60 | | -| `DynamsoftCameraEnhancer`(DCE) | The Dynamsoft Camera Enhancer module controls the camera, transforming it into an image source for the DCV (Dynamsoft Capture Vision) architecture through ISA implementation. It also enhances image quality during acquisition and provides basic viewers for user interaction. | |
61 | | -| `DynamsoftUtility`(Utility) | The Dynamsoft Utility module defines auxiliary classes, including the ImageManager, and implementations of the CRF (Captured Result Filter) and ISA (Image Source Adapter) . These are shared by all Dynamsoft SDKs based on the DCV (Dynamsoft Capture Vision) architecture. | |
62 | | -| `DynamsoftCodeParser`(DCP) | The Dynamsoft Code Parser module converts data strings, typically encrypted in barcodes and machine-readable zones, into human-readable information. | |
63 | | - |
64 | 67 | ## Main APIs |
65 | 68 |
|
| 69 | +| Category | Library | Description | |
| 70 | +| -------- | --- | ----------- | |
| 71 | +| Orchestration | DynamsoftCaptureVisionRouter | Core Capture Vision Router APIs for configuring settings, starting or stopping capture, and registering receivers. | |
| 72 | +| Functional Modules | DynamsoftBarcodeReader<br>DynamsoftCodeParser | APIs for functional modules, mainly for decoded results and result processing. | |
| 73 | +| Input & UI Enhancement | DynamsoftCameraEnhancer | APIs for camera control, image enhancement, and camera UI. | |
| 74 | +| Infrastructure & Utility | DynamsoftLicense<br>DynamsoftCore<br>DynamsoftUtility | Licensing, basic structures, intermediate results, and utility APIs. | |
| 75 | + |
66 | 76 | ### Capture Vision Router |
67 | 77 |
|
68 | 78 | The main class [`CaptureVisionRouter`]({{ site.dcvb_android_api }}capture-vision-router/capture-vision-router.html) acts as the SDK entry point and provides the following essential APIs: |
69 | 79 |
|
70 | 80 | - [Set input]({{ site.dcvb_android_api }}capture-vision-router/multiple-file-processing.html#setinput) |
71 | | -- [Config barcode reader settings]({{ site.dcvb_android_api }}capture-vision-router/settings.html) |
| 81 | +- [Configure barcode reader settings]({{ site.dcvb_android_api }}capture-vision-router/settings.html) |
72 | 82 | - [Add result receiver]({{ site.dcvb_android_api }}capture-vision-router/multiple-file-processing.html#addresultreceiver) |
73 | | -- [Start video stream barcode processing]({{ site.dcvb_android_api }}capture-vision-router/multiple-file-processing.html#startcapturing) |
| 83 | +- [Start barcode capture from a video stream]({{ site.dcvb_android_api }}capture-vision-router/multiple-file-processing.html#startcapturing) |
| 84 | + |
| 85 | +### Image Source |
| 86 | + |
| 87 | +Implement [`ImageSourceAdapter`]({{ site.dcvb_android_api }}core/basic-structures/image-source-adapter.html) and bind it to [`CaptureVisionRouter`]({{ site.dcvb_android_api }}capture-vision-router/capture-vision-router.html) so the SDK can continuously receive images. |
74 | 88 |
|
75 | | -### Image Source Adapter |
| 89 | +Built-in implementations include: |
76 | 90 |
|
77 | | -The [`ImageSourceAdapter`]({{ site.dcvb_android_api }}core/basic-structures/image-source-adapter.html) class is an abstract class representing an adapter for image sources, providing a framework for fetching, buffering, and managing images from various sources. It serves as the input for the [`CaptureVisionRouter`]({{ site.dcvb_android_api }}capture-vision-router/capture-vision-router.html). You can either use the typical implementations of [`ImageSourceAdapter`]({{ site.dcvb_android_api }}core/basic-structures/image-source-adapter.html) or implement your own. |
| 91 | +- [`CameraEnhancer`]({{ site.dce_android }}primary-api/camera-enhancer.html) for video streams. [`CameraView`]({{ site.dce_android }}auxiliary-api/dcecameraview.html) provides the corresponding camera UI. |
| 92 | +- [`DirectoryFetcher`]({{ site.dcvb_android_api }}utility/directory-fetcher.html) for files or folders. |
78 | 93 |
|
79 | | -Class [`CameraEnhancer`]({{ site.dce_android }}primary-api/camera-enhancer.html) is one of the typical implementations of [`ImageSourceAdapter`]({{ site.dcvb_android_api }}core/basic-structures/image-source-adapter.html). It is a class that not only implements the video frame obtaining APIs but also enable you to improve the video quality by adjusting the camera settings. |
| 94 | +### Result |
80 | 95 |
|
81 | | -### Captured Result Receiver |
| 96 | +#### Receiver and Callbacks |
82 | 97 |
|
83 | | -To receive the results of video streaming barcode decoding, you need to implement the [`CapturedResultReceiver`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html) with the callback method [`onDecodedBarcodesReceived`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html#ondecodedbarcodesreceived). The result you received in the callback method is a [`DecodedBarcodesResult`](decoded-barcodes-result.md) object, which contains all the decoded barcodes from the processed video frame. |
| 98 | +Implement [`CapturedResultReceiver`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html) to receive capture results. |
84 | 99 |
|
85 | | -- [`onDecodedBarcodesReceived`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html#ondecodedbarcodesreceived): The callback method for you to receive the barcode decoding results with a [`DecodedBarcodesResult`](decoded-barcodes-result.md) object. |
86 | | -- [`DecodedBarcodesResult`](decoded-barcodes-result.md): An object that contains all the [`BarcodeResultItem`](barcode-result-item.md) that obtained from a video frame. |
87 | | -- [`BarcodeResultItem`](barcode-result-item.md): The basic item that represents a single barcode with the decoded text and other information. |
| 100 | +| Callback | Description | |
| 101 | +| -------- | ----------- | |
| 102 | +| [`onDecodedBarcodesReceived`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html#ondecodedbarcodesreceived) | Callback for receiving barcode decoding results as a [`DecodedBarcodesResult`](decoded-barcodes-result.md) object. | |
| 103 | +| [`onParsedResultReceived`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html#onparsedresultreceived) | Callback for receiving parsed results as a [`ParsedResult`]({{ site.dcp_android_api }}parsed-result.html) object. | |
| 104 | +| [`onCapturedResultReceived`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result-receiver.html#oncapturedresultreceived) | Callback for receiving all result types as a [`CapturedResult`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result.html) object. | |
88 | 105 |
|
89 | | -### Camera View |
| 106 | +#### Result Objects |
90 | 107 |
|
91 | | -[`CameraView`]({{ site.dce_android }}auxiliary-api/dcecameraview.html) is a view class that design for visualizing the real time video streaming and the barcode decoding result. If the [`CameraEnhancer`]({{ site.dce_android }}primary-api/camera-enhancer.html) is set as the input of your CVR, the decoded barcodes will be highlighted automatically on the [`CameraView`]({{ site.dce_android }}auxiliary-api/dcecameraview.html). |
| 108 | +| Result | Basic Item | Type | |
| 109 | +| ------ | ---------- | ---- | |
| 110 | +| [`CapturedResult`]({{ site.dcvb_android_api }}capture-vision-router/auxiliary-classes/captured-result.html) | [`CapturedResultItem`]({{ site.dcvb_android_api }}core/basic-structures/captured-result-item.html) | Depends on `CapturedResultItemType`. Cast items to the corresponding subclass before use. | |
| 111 | +| [`DecodedBarcodesResult`](decoded-barcodes-result.md) | [`BarcodeResultItem`](barcode-result-item.md) | `CRIT_BARCODE` | |
| 112 | +| [`ParsedResult`]({{ site.dcp_android_api }}parsed-result.html) | [`ParsedResultItem`]({{ site.dcp_android_api }}parsed-result-item.html) | `CRIT_PARSED_RESULT` | |
0 commit comments