3.0.0 • Published 11 months ago
@nativescript/mlkit-barcode-scanning v3.0.0
@nativescript/mlkit-barcode-scanning
This plugin is used with @nativescript/mlkit-core. It enables barcode scanning and provides the BarcodeResult type for the barcode-scanned data.
Contents
Installation
npm install @nativescript/mlkit-barcode-scanningUse @nativescript/mlkit-barcode-scanning
Follow these steps to scan a barcode:
- Add MLKitView to your page and set the
detectionTypeproperty to"barcode".
<StackLayout>
<MLKitView
detectionType="barcode"
detection="{{ onDetection }}"
/>
<Label row="6">
<FormattedString>
<Span text="Barcode: "/>
<Span text="{{ barcode }}" class="text-green-500"/>
</FormattedString>
</Label>
</StackLayout>- To receive the scanned barcode data, handle the
detectionevent and get the data if the event's type is"barcode".
import { Observable } from "@nativescript/core"
import { DetectionEvent, DetectionType } from "@nativescript/mlkit-core";
import { BarcodeResult } from "@nativescript/mlkit-barcode-scanning";
export class BarcodeScannerViewModel extends Observable {
barcode = ""
...
onDetection(event: DetectionEvent){
if(event.type == DetectionType.Barcode){
const barcodeData: BarcodeResult = event.data[0] as BarcodeResult;
this.set("barcode", barcodeData?.rawValue)
}
}
}Demo app
You can try a demo app at StackBlitz with the NativeScript Preview app.
API
Interfaces
BarcodeResult
The scanned barcode data object has the following properties:
| Property | Type | Optional |
|---|---|---|
format | BarcodeFormats | No |
calendarEvent | CalenderEvent | Yes |
contactInfo | ContactInfo | Yes |
bounds | Bounds | Yes |
points | Point[] | Yes |
displayValue | string | Yes |
driverLicense | DriverLicense | Yes |
email | Yes | |
geoPoint | GeoPoint | Yes |
phone | Phone | Yes |
rawBytes | any[] | Yes |
rawValue | string | Yes |
sms | Sms | Yes |
url | UrlBookmark | Yes |
valueType | ValueType | Yes |
wifi | WiFi | Yes |
WiFi
| Property | Type | Optional |
|---|---|---|
encryptionType | string | No |
password | string | No |
ssid | string | No |
UrlBookmark
| Property | Type | Optional |
|---|---|---|
title | string | Yes |
url | string | Yes |
Sms
| Property | Type | Optional |
|---|---|---|
message | string | No |
honeNumber | string | No |
Phone
| Property | Type | Optional |
|---|---|---|
number | string | No |
type | PhoneType | No |
| Property | Type | Optional |
|---|---|---|
address | string | No |
subject | string | No |
body | string | No |
type | EmailType |
DriverLicense
| Property | Type | Optional |
|---|---|---|
documentType | string | No |
firstName | string | No |
middleName | string | No |
lastName | string | No |
gender | string | No |
addressStreet | string | No |
addressCity | string | No |
addressState | string | No |
addressZip | string | No |
licenseNumber | string | No |
issueDate | string | No |
expiryDate | string | No |
birthDate | string | No |
issuingCountry | string | No |
CalenderEvent
| Property | Type | Optional |
|---|---|---|
description | string | Yes |
location | string | Yes |
organizer | string | Yes |
status | string | Yes |
summary | string | Yes |
start | string | Yes |
end | string | Yes |
Address
| Property | Type | Optional |
|---|---|---|
addressLines | string[] | No |
type | AddressType | No |
ContactInfo
| Property | Type | Optional |
|---|---|---|
addresses | Address[] | No |
Origin
| Property | Type | Optional |
|---|---|---|
x | number | No |
y | number | No |
Size
| Property | Type | Optional |
|---|---|---|
width | number | No |
height | number | No |
Bounds
| Property | Type | Optional |
|---|---|---|
origin | Origin | No |
size | Size | No |
Point
| Property | Type | Optional |
|---|---|---|
x | number | No |
y | number | No |
GeoPoint
| Property | Type | Optional |
|---|---|---|
lat | number | No |
lng | number | No |
Enums
EncryptionType
Open='open'WPA='wpa'WEP='wep'Unknown='unknown'
PhoneType
Unknown="unknown"Home="home"Work="work"Fax="fax"Mobile="mobile"
EmailType
Unknown="unknown"Home="home"Work="work"
AddressType
Unknown="unknown"Home="home"Work="work"
ValueType
ContactInfo="contactInfo"Email="email"ISBN="isbn"Phone="phone"Product="product"Text="text"Sms="sms"URL="url"WiFi="wifi"Geo="geo"CalenderEvent="calender"DriverLicense="driverLicense"Unknown="unknown"
BarcodeFormats
ALL='all'CODE_128='code_128'CODE_39='code_39'CODE_93='code_93'CODABAR='codabar'DATA_MATRIX='data_matrix'EAN_13= 'ean_13'EAN_8='ean_8'ITF='itf'QR_CODE='qr_code'UPC_A='upc_a'UPC_E='upc_e'PDF417='pdf417'AZTEC='aztec'UNKOWN='unknown'
License
Apache License Version 2.0
3.0.0-alpha.7
1 year ago
3.0.0
11 months ago
3.0.0-alpha.6
1 year ago
3.0.0-alpha.5
1 year ago
3.0.0-alpha.4
1 year ago
3.0.0-alpha.1
2 years ago
3.0.0-alpha.0
2 years ago
3.0.0-alpha.3
2 years ago
3.0.0-alpha.2
2 years ago
2.1.0
2 years ago
1.0.8
3 years ago
2.0.0-alpha.0
3 years ago
2.0.0-alpha.1
3 years ago
2.0.0
3 years ago
1.0.7
3 years ago
1.0.6
3 years ago
1.0.5
4 years ago
1.0.2
4 years ago
1.0.1
4 years ago
1.0.0
4 years ago
1.0.4
4 years ago
1.0.3
4 years ago
1.0.0-alpha.7
4 years ago
1.0.0-alpha.6
4 years ago
1.0.0-alpha.5
4 years ago
1.0.0-alpha.8
4 years ago
1.0.0-alpha.4
4 years ago
1.0.0-alpha.3
4 years ago
1.0.0-alpha.2
4 years ago
1.0.0-alpha.1
4 years ago
1.0.0-alpha.0
4 years ago