Kể từ ngày 27 tháng 3 năm 2025, bạn nên sử dụng android-latest-release
thay vì aosp-main
để xây dựng và đóng góp cho AOSP. Để biết thêm thông tin, hãy xem phần Thay đổi đối với AOSP.
Tai nghe USB: Thông số kỹ thuật của phụ kiện
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.
Tài liệu này chỉ định một số đặc điểm của tai nghe USB để tai nghe hoạt động đồng nhất trên hệ sinh thái Android. Chỉ được phép sử dụng tai nghe có giao diện âm thanh USB kỹ thuật số. Không được phép sử dụng tai nghe thuần tuý analog có khả năng thích ứng cơ học với USB-C, theo thông số kỹ thuật của USB Type-C.
Tài liệu này nêu rõ các yêu cầu tối thiểu: nhà sản xuất phụ kiện nên thêm các tính năng trong khi vẫn lưu ý đến các yêu cầu này.
Tổng quan về chức năng
Tai nghe USB có thể triển khai nhiều tính năng cơ bản và nâng cao. Thông số kỹ thuật này chỉ bao gồm các tính năng cơ bản bắt buộc:
- Đầu ra âm thanh nổi
- Micrô (không bắt buộc nhưng nên dùng)
- Các nút chức năng để điều khiển âm lượng, phát và cuộc gọi
Các loại thiết bị đầu cuối USB Audio Class
Tai nghe và tai nghe phải báo cáo các loại thiết bị đầu cuối USB Audio Class (UAC) sau:
- Tai nghe. Đầu chuyển đổi trở kháng thấp, < 100 ohm, không có micrô: 0x0302
- Tai nghe. Bộ chuyển đổi trở kháng thấp có micrô: 0x0402
Hàm điều khiển
Tai nghe có thể có nhiều nút để điều khiển các chức năng cụ thể, chẳng hạn như âm lượng và phát/tạm dừng.
Hàm điều khiển |
Hỗ trợ về phụ kiện |
Mô tả |
A |
Bắt buộc |
Phát/tạm dừng (nhấn ngắn), chạy lệnh thoại (nhấn và giữ), tiếp theo (nhấn đúp) |
B |
Không bắt buộc |
Tăng âm lượng |
C |
Không bắt buộc |
Giảm âm lượng |
D |
Không bắt buộc |
Chạy lệnh thoại |
Gán hàm cho các nút như sau:
- Tất cả tai nghe một nút phải triển khai Hàm A.
- Tai nghe có nhiều nút phải triển khai các chức năng theo mẫu sau:
- 2 hàm: A và D
- 3 hàm: A, B, C
- 4 hàm: A, B, C, D
Lưu ý: Không được phép khoá phím. Mỗi lần nhấn phím của người dùng cuối phải tạo sự kiện phím "down" (nhấn) và "up" (nhả) tương ứng, khớp với thao tác của người dùng cuối. Nói cách khác, các phím cho hàm A đến D không bao giờ được "khóa" hoặc triển khai để dùng làm nút bật/tắt (trong đó sự kiện "lên" chỉ theo sau sự kiện "xuống" khi nhấn phím lần thứ hai).
Ánh xạ phần mềm
Bạn cần có tai nghe USB tương thích để hỗ trợ các ánh xạ phần mềm sau đây cho các nút tai nghe. Các thiết bị so khớp các ánh xạ HID này với mã phím Android thích hợp.
Chức năng |
Ánh xạ |
A |
Trang sử dụng HID: 0x0C
Mức sử dụng HID: 0x0CD |
B |
Trang sử dụng HID: 0x0C
Mức sử dụng HID: 0x0E9 |
C |
Trang sử dụng HID: 0x0C
Mức sử dụng HID: 0x0EA |
D |
Trang sử dụng HID: 0x0C
Mức sử dụng HID: 0x0CF |
Bạn nên khai báo mối liên kết phím trong một tập hợp ứng dụng HID. Đối với các phụ kiện không có micrô, hãy sử dụng Tai nghe (Trang sử dụng: Người tiêu dùng (0x0C), Cách sử dụng: Tai nghe (0x05)). Đối với các phụ kiện có micrô, hãy sử dụng Tai nghe (Trang sử dụng: Điện thoại (0x0B), Cách sử dụng: Tai nghe (0x05)).
Cấp đầu ra
Mức áp suất âm thanh tối đa phải tuân thủ mọi yêu cầu theo quy định tại quốc gia đến.
Cơ khí
Nhà sản xuất phụ kiện phải tuân thủ các yêu cầu đối với đầu nối USB như USB.org chỉ định.
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-07-27 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 2025-07-27 UTC."],[],[],null,["# USB headset: Accessory specification\n\nThis documentation specifies some characteristics of USB headsets, so that\nthey function uniformly across the Android ecosystem. Only headsets with\ndigital USB audio interface are permitted. Purely analog headsets with\nmechanical adaptation to USB-C are not permitted, as per USB Type-C\nspecification.\n\n\nThis documentation specifies the minimum requirements: accessory manufacturers\nare encouraged to add features while keeping these requirements in mind.\n\nFunctional overview\n-------------------\n\n\nUSB headsets can implement a variety of basic and advanced features. This\nspecification only covers mandated basic features:\n\n- Stereo output\n- Optional, but recommended, microphone\n- Function buttons for volume, playback, and call control\n\nUSB Audio Class terminal types\n------------------------------\n\n\nHeadphones and headsets must report these USB Audio Class (UAC) terminal types:\n\n- **Headphones**. Low impedance transducers, \\\u003c 100 ohms, no microphone: 0x0302\n- **Headset**. Low impedance transducers with microphone: 0x0402\n\nControl functions\n-----------------\n\nHeadsets can come with varying number of buttons to control specific\nfunctions, such as volume and play/pause.\n\n\n| Control function | Accessory Support | Description |\n|------------------|-------------------|----------------------------------------------------------------------------------|\n| A | Required | Play/pause (short press), launch voice command (long press), next (double press) |\n| B | Optional | Vol+ |\n| C | Optional | Vol- |\n| D | Optional | Launch voice command |\n\n\n**Assign functions to buttons as follows:**\n\n- All one-button headsets must implement Function A.\n- Headsets with multiple buttons must implement functions according to the following pattern:\n - 2 functions: A and D\n - 3 functions: A, B, C\n - 4 functions: A, B, C, D\n\n\n**Note**: No key latching allowed. Each key press by the end user\nmust generate the corresponding \"down\" and \"up\" key event, matching the end user\naction. In other words, the keys for functions A through D are never \"latched\"\nor implemented to be used as a toggle (where the \"up\" event only follows \"down\"\non a second key press).\n\nSoftware mapping\n----------------\n\n\nCompatible USB headsets are required to support the following software mappings\nfor the headset buttons. Devices match these HID mappings with the appropriate\nAndroid keycode.\n\n| Function | Mappings |\n|----------|---------------------------------------|\n| A | HID usage page: 0x0C HID usage: 0x0CD |\n| B | HID usage page: 0x0C HID usage: 0x0E9 |\n| C | HID usage page: 0x0C HID usage: 0x0EA |\n| D | HID usage page: 0x0C HID usage: 0x0CF |\n\nKey mappings should be declared within a HID application\ncollection. For accessories without a microphone, use Headphone (Usage\nPage: Consumer (0x0C), Usage: Headphone (0x05)). For accesories with a\nmicrophone, use Headset (Usage Page: Telephony (0x0B), Usage: Headset (0x05)).\n\nOutput level\n------------\n\n\nThe maximum sound pressure level shall comply to any regulatory requirement in\nthe country of destination.\n\nMechanical\n----------\n\n\nAccessory manufacturers must follow the requirements for USB connectors\nas specified by [USB.org](http://www.usb.org/)."]]