Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Quét mã vạch
plat_iosplat_android
Với API quét mã vạch của Bộ công cụ học máy, bạn có thể đọc dữ liệu được mã hoá bằng hầu hết
định dạng mã vạch chuẩn. Quá trình quét mã vạch diễn ra trên thiết bị nhưng không
cần có kết nối mạng.
Mã vạch là một cách thuận tiện để truyền thông tin từ thế giới thực đến
. Đặc biệt, khi sử dụng các định dạng 2D như mã QR, bạn có thể mã hoá
dữ liệu có cấu trúc như thông tin liên hệ hoặc thông tin xác thực mạng Wi-Fi. Bởi vì
Bộ công cụ học máy có thể tự động nhận dạng và phân tích cú pháp dữ liệu này, ứng dụng của bạn có thể phản hồi
một cách thông minh khi người dùng quét mã vạch.
Định dạng 2D: Aztec, Ma trận dữ liệu, PDF417, Mã QR
Tự động phát hiện định dạng
Quét tất cả định dạng mã vạch được hỗ trợ cùng một lúc mà không cần chỉ định định dạng bạn đang tìm kiếm. Hoặc tăng tốc độ quét bằng cách hạn chế
trình phát hiện sang các định dạng mà bạn quan tâm.
Trích xuất dữ liệu có cấu trúc
Dữ liệu có cấu trúc được lưu trữ bằng một trong các định dạng 2D được hỗ trợ
được tự động phân tích cú pháp. Các loại thông tin được hỗ trợ bao gồm URL,
thông tin liên hệ, sự kiện trên lịch, địa chỉ email, điện thoại
số, lời nhắc tin nhắn SMS, ISBN, thông tin kết nối Wi-Fi,
vị trí địa lý và thông tin về người lái xe theo tiêu chuẩn AAMVA.
Hoạt động với mọi hướng
Mã vạch được nhận dạng và quét bất kể hướng của chúng:
lật ngược phải, lộn ngược hoặc lệch sang một bên.
Chạy trên thiết bị
Quá trình quét mã vạch được thực hiện hoàn toàn trên thiết bị và không
cần có kết nối mạng.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-25 UTC."],[],[],null,["Barcode Scanning \nplat_ios plat_android \n\nWith 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\n[iOS](/docs/ml-kit/ios/read-barcodes)\n[Android](/docs/ml-kit/android/read-barcodes)\n\nIf you're a Flutter developer, you might be interested in\n[FlutterFire](https://github.com/FirebaseExtended/flutterfire/tree/master/packages/firebase_ml_vision),\nwhich includes a plugin for Firebase's ML Vision APIs.\n| This is a beta release of ML Kit for Firebase. This API might be changed in backward-incompatible ways and is not subject to any SLA or deprecation policy.\n\nKey capabilities\n\n|-----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Reads most standard formats | - Linear formats: Codabar, Code 39, Code 93, Code 128, EAN-8, EAN-13, ITF, UPC-A, UPC-E - 2D formats: Aztec, Data Matrix, PDF417, QR Code |\n| Automatic format detection | Scan for all supported barcode formats at once, without having to specify the format you're looking for. Or, boost scanning speed by restricting the detector to only the formats you're interested in. |\n| Extracts structured data | Structured data stored using one of the supported 2D formats are automatically parsed. Supported information types include URLs, contact information, calendar events, email addresses, phone numbers, SMS message prompts, ISBNs, WiFi connection information, geographic location, and AAMVA-standard driver information. |\n| Works with any orientation | Barcodes are recognized and scanned regardless of their orientation: right-side-up, upside-down, or sideways. |\n| Runs on the device | Barcode scanning is performed completely on the device, and doesn't require a network connection. |\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 | | |"]]