Сканирование штрих-кода
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.

С помощью API сканирования штрих-кодов ML Kit вы можете считывать данные, закодированные с использованием большинства стандартных форматов штрих-кодов. Сканирование штрих-кода происходит на устройстве и не требует подключения к сети.
Штрих-коды — это удобный способ передать информацию из реального мира в ваше приложение. В частности, при использовании 2D-форматов, таких как QR-код, вы можете кодировать структурированные данные, такие как контактная информация или учетные данные сети Wi-Fi. Поскольку ML Kit может автоматически распознавать и анализировать эти данные, ваше приложение может разумно реагировать, когда пользователь сканирует штрих-код.
Пользователям, которым не требуется собственный пользовательский интерфейс, мы рекомендуем использовать сканер кода Google . API сканера кода использует ту же модель вывода, что и стандартный API сканирования штрих-кода, но возвращает только наиболее централизованный штрих-код для более быстрого и последовательного взаимодействия. Сканер кода Google также более безопасен и не требует разрешений и не требует реализации или разрешений, связанных с камерой.
iOS Android Сканер кода Google
Ключевые возможности
- Читает большинство стандартных форматов.
- Линейные форматы: Codabar, Code 39, Code 93, Code 128, EAN-8, EAN-13, ITF, UPC-A, UPC-E.
- 2D-форматы: Aztec, Data Matrix, PDF417, QR-код.
- Автоматическое определение формата
- Сканируйте все поддерживаемые форматы штрих-кодов одновременно без необходимости указывать формат, который вы ищете, или увеличьте скорость сканирования, ограничив детектор только теми форматами, которые вас интересуют.
- Извлекает структурированные данные
- Структурированные данные, хранящиеся в одном из поддерживаемых 2D-форматов, анализируются автоматически. Поддерживаемые типы информации включают URL-адреса, контактную информацию, события календаря, адреса электронной почты, номера телефонов, приглашения к SMS-сообщениям, номера ISBN, информацию о подключении Wi-Fi, географическое местоположение и информацию о драйверах в соответствии со стандартом AAMVA.
- Работает с любой ориентацией
- Штрих-коды распознаются и сканируются независимо от их ориентации: правой стороной вверх, вверх ногами или вбок.
- Запускается на устройстве
- Сканирование штрих-кода выполняется полностью на устройстве и не требует подключения к сети.
Обратите внимание, что этот API не распознает штрих-коды в следующих формах:
- 1D штрих-коды, состоящие только из одного символа
- Штрих-коды в формате ITF с количеством символов менее шести, известно, что этот формат ненадежен из-за отсутствия контрольной суммы.
- Штрих-коды, закодированные с помощью FNC2, FNC3 или FNC4.
- QR-коды, созданные в режиме ECI
Этот API распознает не более 10 штрих-кодов за один вызов API.
Примеры результатов
 | Результат |
---|
Углы | (49 125), (172 125), (172 160), (49 160) | Исходное значение | 2404105001722 |
|
 | Результат |
---|
Углы | (87,87) (612,87) (612 612) (87 612) | Исходное значение | WIFI:S:SB1Guest;P:12345;T:WEP;; | Информация о Wi-Fi | SSID | SB1Гость | Пароль | 12345 | Тип | WEP |
|
|
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-08-29 UTC.
[null,null,["Последнее обновление: 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 | | |"]]