Leitura de código de barras
Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.

Com a API de leitura de código de barras do Kit de ML, é possível ler dados codificados usando a maioria
dos formatos de código de barras padrão. A leitura de código de barras acontece no dispositivo e não
exige uma conexão de rede.
Os códigos de barras são uma maneira conveniente de transmitir informações do mundo real para seu
app. Especificamente, ao usar formatos 2D, como código QR, é possível codificar
dados estruturados, como dados de contato ou credenciais de rede Wi-Fi. Como o
Kit de ML pode reconhecer e analisar automaticamente esses dados, seu app pode responder
de maneira inteligente quando um usuário digitaliza um código de barras.
Para usuários que não precisam de uma interface personalizada, recomendamos o uso do leitor de código do Google. A API
Code scanner usa o mesmo modelo de inferência que a API Barcode Scan padrão,
mas retorna apenas o código de barras mais centralizado para uma experiência mais rápida e
consistente. O leitor de código do Google também é mais seguro e não requer
implementação ou permissões relacionadas à câmera.
iOS
Android
Leitor de código do Google
Principais recursos
- Lê a maioria dos formatos padrão
- Formatos lineares: Codabar, Code 39, Code 93, Código 128, EAN-8, EAN-13, ITF, UPC-A e UPC-E
- Formatos 2D: Aztec, matriz de dados, PDF417, código QR
- Detecção automática de formato
- Procure todos os formatos de código de barras compatíveis de uma só vez sem precisar especificar
o formato que você está procurando ou aumente a velocidade de leitura restringindo o
detector apenas aos formatos do seu interesse.
- Extrai dados estruturados
- Os dados estruturados armazenados com um dos formatos 2D compatíveis são
analisados automaticamente. Os tipos de informações aceitos incluem URLs,
dados de contato, eventos da agenda, endereços de e-mail, números de
telefone, prompts de mensagem SMS, ISBNs, informações de conexão Wi-Fi,
localização geográfica e informações de motorista padrão da AAMVA.
- Funciona com qualquer orientação
- Os códigos de barras são reconhecidos e lidos, independentemente da orientação:
com o lado direito para cima, de cabeça para baixo ou de lado.
- É executado no dispositivo
- A leitura de código de barras é realizada completamente no dispositivo e não
exige uma conexão de rede.
Essa API não reconhece códigos de barras com os seguintes formatos:
- Códigos de barras 1D com apenas um caractere
- Códigos de barras no formato ITF com menos de seis caracteres, que são conhecidos por serem instáveis devido à ausência de soma de verificação.
- Códigos de barras codificados com FNC2, FNC3 ou FNC4
- Códigos QR gerados no modo ECI
Essa API reconhece no máximo 10 códigos de barras por chamada de API.
Resultados de exemplo
|
Resultado |
Cantos |
(49.125), (172.125), (172.160), (49.160) |
Valor bruto |
2404105001722 |
|
|
Resultado |
Cantos |
(87,87) (612,87) (612.612) (87.612) |
Valor bruto |
WIFI:S:SB1Guest;P:12345;T:WEP;; |
Informações do Wi-Fi |
SSID (Identificador do conjunto de serviços) |
SB1Guest |
Senha |
12345 |
Tipo |
WEP |
|
|
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2025-08-29 UTC.
[null,null,["Última atualização 2025-08-29 UTC."],[[["\u003cp\u003eML Kit's Barcode Scanning API reads data from most standard barcode formats, including linear and 2D formats, without needing an internet connection.\u003c/p\u003e\n"],["\u003cp\u003eIt automatically detects and parses structured data like contact info, WiFi credentials, and more from supported 2D formats, enabling intelligent app responses.\u003c/p\u003e\n"],["\u003cp\u003eThe API works offline, recognizing barcodes in any orientation, and the Google Code Scanner offers a faster, safer, and permissionless option for basic scanning needs.\u003c/p\u003e\n"],["\u003cp\u003eWhile it supports a wide range of formats and data types, the API has limitations regarding certain 1D barcodes, ITF formats, and QR codes with specific encodings, recognizing a maximum of 10 barcodes per call.\u003c/p\u003e\n"]]],["ML Kit's barcode scanning API reads data from most standard barcode formats on the device without needing a network connection. It automatically detects and parses structured data from 2D formats like QR codes, recognizing information such as URLs, contact details, and WiFi credentials. The API supports various linear and 2D formats, works with any barcode orientation, and offers a Google code scanner option for a faster, safer, permission-less experience. It does not recognize some formats including some 1D and ITF barcodes.\n"],null,["With ML Kit's barcode scanning API, you can read data encoded using most\nstandard barcode formats. Barcode scanning happens on the device, and doesn't\nrequire a network connection.\n\nBarcodes are a convenient way to pass information from the real world to your\napp. In particular, when using 2D formats such as QR code, you can encode\nstructured data such as contact information or WiFi network credentials. Because\nML Kit can automatically recognize and parse this data, your app can respond\nintelligently when a user scans a barcode.\n\nFor users who don't require custom UI, we recommend using the\n[Google code scanner](/ml-kit/vision/barcode-scanning/code-scanner). The code\nscanner API uses the same inference model as the standard Barcode scanning API,\nbut returns only the most centralized barcode for a faster and more consistent\nexperience. Google code scanner is also safer and permission-less, and does not\nrequire camera-related implementation or permissions.\n\n[iOS](/ml-kit/vision/barcode-scanning/ios)\n[Android](/ml-kit/vision/barcode-scanning/android)\n[Google code scanner](/ml-kit/vision/barcode-scanning/code-scanner)\n\nKey capabilities\n\nReads most standard formats\n:\n - Linear formats: Codabar, Code 39, Code 93, Code 128, EAN-8, EAN-13, ITF, UPC-A, UPC-E\n - 2D formats: Aztec, Data Matrix, PDF417, QR Code\n\nAutomatic format detection\n: Scan for all supported barcode formats at once without having to specify\n the format you're looking for, or boost scanning speed by restricting the\n detector to only the formats you're interested in.\n\nExtracts structured data\n: Structured data that's stored using one of the supported 2D formats is\n automatically parsed. Supported information types include URLs,\n contact information, calendar events, email addresses, phone\n numbers, SMS message prompts, ISBNs, WiFi connection information,\n geographic location, and AAMVA-standard driver information.\n\nWorks with any orientation\n: Barcodes are recognized and scanned regardless of their orientation:\n right-side-up, upside-down, or sideways.\n\nRuns on the device\n: Barcode scanning is performed completely on the device, and doesn't\n require a network connection.\n\nNote that this API does not recognize barcodes in these forms:\n\n- 1D Barcodes with only one character\n- Barcodes in ITF format with fewer than six characters, and this format is known to be flaky due to absence of checksum\n- Barcodes encoded with FNC2, FNC3 or FNC4\n- QR codes generated in the ECI mode\n\nThis API recognizes no more than 10 barcodes per API call.\n\nExample results\n\n|---|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| | | Result || |---------------|------------------------------------------| | **Corners** | (49,125), (172,125), (172,160), (49,160) | | **Raw value** | 2404105001722 | |\n\n|---|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| | | Result || |----------------------|-----------------------------------------------------------------------------------------------------------------| | **Corners** | (87,87) (612,87) (612,612) (87,612) | | **Raw value** | `WIFI:S:SB1Guest;P:12345;T:WEP;;` | | **WiFi information** | |--------------|----------| | **SSID** | SB1Guest | | **Password** | 12345 | | **Type** | WEP | | |"]]