Saltar al contenido

Escáner de Código de Barras (Barcode Scanner)

GitHubnpmcrates.io
Referencia de API

Permite que tu aplicación móvil use la cámara para escanear códigos QR, EAN-13 y otros tipos de códigos de barras.

Este plugin requiere una versión de Rust de al menos 1.77.2

PlataformaNivelNotas
windows
linux
macos
android
ios

Instala el plugin barcode-scanner para comenzar.

Usa el gestor de paquetes de tu proyecto para agregar la dependencia:

npm run tauri add barcode-scanner

En iOS el plugin barcode scanner requiere el valor de la propiedad de lista de información NSCameraUsageDescription, que debería describir por qué tu aplicación necesita usar la cámara.

En el archivo src-tauri/Info.ios.plist, agrega el siguiente fragmento:

src-tauri/Info.ios.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSCameraUsageDescription</key>
<string>Read QR codes</string>
</dict>
</plist>

El plugin de escáner de código de barras está disponible en JavaScript.

import { scan, Format } from '@tauri-apps/plugin-barcode-scanner';
// when using `"withGlobalTauri": true`, you may use
// const { scan, Format } = window.__TAURI__.barcodeScanner;
// `windowed: true` actually sets the webview to transparent
// instead of opening a separate view for the camera
// make sure your user interface is ready to show what is underneath with a transparent element
scan({ windowed: true, formats: [Format.QRCode] });

De forma predeterminada, todos los comandos y alcances (scopes) potencialmente peligrosos del plugin están bloqueados y no se puede acceder a ellos. Debes modificar los permisos en tu configuración de capabilities para habilitarlos.

Consulta la Visión General de Capacidades para obtener más información y la guía paso a paso para usar permisos de plugins.

src-tauri/capabilities/mobile.json
{
"$schema": "../gen/schemas/mobile-schema.json",
"identifier": "mobile-capability",
"windows": ["main"],
"platforms": ["iOS", "android"],
"permissions": ["barcode-scanner:allow-scan", "barcode-scanner:allow-cancel"]
}

Permiso Predeterminado

Este conjunto de permisos configura qué características de escaneo de códigos de barras están expuestas de forma predeterminada.

Permisos Otorgados

Permite todas las características relacionadas con códigos de barras.

Este conjunto de permisos predeterminado incluye lo siguiente:

  • allow-cancel
  • allow-check-permissions
  • allow-open-app-settings
  • allow-request-permissions
  • allow-scan
  • allow-vibrate

Tabla de Permisos

Identificador Descripción

barcode-scanner:allow-cancel

Habilita el comando cancel sin ningún alcance preconfigurado.

barcode-scanner:deny-cancel

Deniega el comando cancel sin ningún alcance preconfigurado.

barcode-scanner:allow-check-permissions

Habilita el comando check_permissions sin ningún alcance preconfigurado.

barcode-scanner:deny-check-permissions

Deniega el comando check_permissions sin ningún alcance preconfigurado.

barcode-scanner:allow-open-app-settings

Habilita el comando open_app_settings sin ningún alcance preconfigurado.

barcode-scanner:deny-open-app-settings

Deniega el comando open_app_settings sin ningún alcance preconfigurado.

barcode-scanner:allow-request-permissions

Habilita el comando request_permissions sin ningún alcance preconfigurado.

barcode-scanner:deny-request-permissions

Deniega el comando request_permissions sin ningún alcance preconfigurado.

barcode-scanner:allow-scan

Habilita el comando scan sin ningún alcance preconfigurado.

barcode-scanner:deny-scan

Deniega el comando scan sin ningún alcance preconfigurado.

barcode-scanner:allow-vibrate

Habilita el comando vibrate sin ningún alcance preconfigurado.

barcode-scanner:deny-vibrate

Deniega el comando vibrate sin ningún alcance preconfigurado.


© 2026 Colaboradores de Tauri. CC-BY / MIT