Saltearse al contenido
Tauri

Escáner de códigos de barras

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

Plataformas compatibles

This plugin requires a Rust version of at least 1.77.2

Platform Level Notes
windows
linux
macos
android
ios

Instalación

Instala el plugin de escáner de códigos de barras para comenzar.

Usa el gestor de paquetes de tu proyecto para añadir la dependencia:

npm run tauri add barcode-scanner

Configuración

En iOS, el plugin de escáner de códigos de barras requiere el valor de la propiedad de lista de información NSCameraUsageDescription, que debe describir por qué tu aplicación necesita utilizar la cámara.

En el archivo src-tauri/Info.ios.plist, añade 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>Leer códigos QR</string>
</dict>
</plist>

Uso

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

import { scan, Format } from '@tauri-apps/plugin-barcode-scanner';
// cuando uses `"withGlobalTauri": true`, deberías usar
// const { scan, Format } = window.__TAURI__.barcodeScanner;
// `windowed: true` en realidad establece la vista web en transparente
// en lugar de abrir una vista separada para la cámara
// asegúrate de que tu interfaz de usuario esté lista para mostrar lo que hay debajo con un elemento transparente
scan({ windowed: true, formats: [Format.QRCode] });

Permisos

Por defecto, todos los comandos y ámbitos de plugin potencialmente peligrosos están bloqueados y no se pueden acceder. Debes modificar los permisos en tu configuración de capabilities para habilitar estos.

Consulta la Descripción general de capacidades para obtener más información y la guía paso a paso para utilizar los permisos de plugin.

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"]
}

Default Permission

This permission set configures which barcode scanning features are by default exposed.

Granted Permissions

It allows all barcode related features.

This default permission set includes the following:

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

Permission Table

Identifier Description

barcode-scanner:allow-cancel

Enables the cancel command without any pre-configured scope.

barcode-scanner:deny-cancel

Denies the cancel command without any pre-configured scope.

barcode-scanner:allow-check-permissions

Enables the check_permissions command without any pre-configured scope.

barcode-scanner:deny-check-permissions

Denies the check_permissions command without any pre-configured scope.

barcode-scanner:allow-open-app-settings

Enables the open_app_settings command without any pre-configured scope.

barcode-scanner:deny-open-app-settings

Denies the open_app_settings command without any pre-configured scope.

barcode-scanner:allow-request-permissions

Enables the request_permissions command without any pre-configured scope.

barcode-scanner:deny-request-permissions

Denies the request_permissions command without any pre-configured scope.

barcode-scanner:allow-scan

Enables the scan command without any pre-configured scope.

barcode-scanner:deny-scan

Denies the scan command without any pre-configured scope.

barcode-scanner:allow-vibrate

Enables the vibrate command without any pre-configured scope.

barcode-scanner:deny-vibrate

Denies the vibrate command without any pre-configured scope.


© 2025 Tauri Contributors. CC-BY / MIT