1.0.2 • Published 2 years ago

@alitajs/barcode v1.0.2

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

@alitajs/barcode

A fast and efficient (QR) barcode scanner for Capacitor

Install

npm install @alitajs/barcode
npx cap sync

Example

import { BarcodeScanner } from '@alitajs/barcode';

const startScan = async () => {
  try {
    const permissionStatus = await BarcodeScanner.checkPermission();
    if (permissionStatus.granted) {
      const result = await BarcodeScanner.scanCode();
      console.log(result.hasContent, result.content);
    } else {
      const goSettings = confirm('没有权限,去设置打开');
      goSettings && BarcodeScanner.openAppSettings();
    }
  } catch (error) {
    console.log('error', error);
  }
};

API

checkPermission(...)

checkPermission(options?: CheckPermissionOptions | undefined) => Promise<CheckPermissionResult>
ParamType
optionsCheckPermissionOptions

Returns: Promise<CheckPermissionResult>


openAppSettings()

openAppSettings() => Promise<void>

scanCode()

scanCode() => Promise<ScanResult>

Returns: Promise<ScanResult>


Interfaces

CheckPermissionResult

PropTypeDescriptionSince
grantedbooleanWhen set to true, the ermission is granted.
deniedbooleanWhen set to true, the permission is denied and cannot be prompted for. The openAppSettings method should be used to let the user grant the permission.1.0.0
askedbooleanWhen this is set to true, the user was just prompted the permission. Ergo: a dialog, asking the user to grant the permission, was shown.1.0.0
neverAskedbooleanWhen this is set to true, the user has never been prompted the permission.1.0.0
restrictedbooleaniOS only When this is set to true, the permission cannot be requested for some reason.1.0.0
unknownbooleaniOS only When this is set to true, the permission status cannot be retrieved.1.0.0

CheckPermissionOptions

PropTypeDescriptionDefaultSince
forcebooleanIf this is set to true, the user will be prompted for the permission. The prompt will only show if the permission was not yet granted and also not denied completely yet. For more information see: https://github.com/capacitor-community/barcode-scanner#permissionsfalse1.0.0

ScanResult

PropTypeDescriptionSince
hasContentbooleanThis indicates whether or not the scan resulted in readable content.1.0.0
contentstringThis holds the content of the barcode if available.1.0.0

How to use this plugin in existing native project

ios

in Podfile

pod 'AlitajsBarcode'

android

in build.gradle

repositories {
  ...
  maven { url 'https://jitpack.io' }
}

dependencies {
  implementation 'com.github.alitajs:alitajs-native-barcode:Tag'
}