自 2025 年 3 月 27 日起,我們建議您使用 android-latest-release
而非 aosp-main
建構及貢獻 AOSP。詳情請參閱「Android 開放原始碼計畫變更」。
藍牙
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
Cuttlefish Bluetooth 實作項目支援 rootcanal,可透過網頁版 UI 指令列控制台進行控制。
控制台提供多個指令,可用於控制訪客裝置上的藍牙:
指令 |
說明 |
清單 |
列出目前的裝置和物理裝置 |
新增 DEVICE_TYPE [ARGS] |
建立新裝置 (類型為 DEVICE_TYPE) |
del DEVICE_INDEX |
刪除裝置 |
add_phy PHY_TYPE |
使用 PHY_TYPE 新增 PHY |
del_phy PHY_INDEX |
刪除 PHY |
add_device_to_phy DEVICE_INDEX PHY_INDEX |
將裝置新增至 PHY |
del_device_from_phy DEVICE_INDEX PHY_INDEX |
從 phy 中刪除裝置 |
add_remote HOSTNAME PORT PHY_TYPE |
將遠端 Rootcanal 新增為裝置,並將其註冊至 phy |
裝置類型和 args |
beacon [MAC_ADDRESS] [ADVERTISE_INTERVAL] |
scripted_beacon [MAC_ADDRESS] [CONFIG_PATH] [EVENTS_PATH] |
鍵盤 [MAC_ADDRESS] [ADVERTISE_INTERVAL] |
回送 [MAC_ADDRESS] [ADVERTISE_INTERVAL] |
嗅探器 |
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2025-07-27 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-07-27 (世界標準時間)。"],[],[],null,["# Bluetooth\n\nThe Cuttlefish Bluetooth implementation is supported by rootcanal and can be\ncontrolled with the Web UI command line console.\n\nIn the console, there are several commands that allow for the control of\nBluetooth on the guest device:\n\n| Command | Description |\n|------------------------------------------------------------------------------------------------|-----------------------------------------------------------------|\n| list | List current devices and phys |\n| add \u003cvar translate=\"no\"\u003eDEVICE_TYPE\u003c/var\u003e \u003cvar translate=\"no\"\u003e[ARGS]\u003c/var\u003e | Create new device of type \u003cvar translate=\"no\"\u003eDEVICE_TYPE\u003c/var\u003e |\n| del \u003cvar translate=\"no\"\u003eDEVICE_INDEX\u003c/var\u003e | Delete a device |\n| add_phy \u003cvar translate=\"no\"\u003ePHY_TYPE\u003c/var\u003e | Add new phy with \u003cvar translate=\"no\"\u003ePHY_TYPE\u003c/var\u003e |\n| del_phy \u003cvar translate=\"no\"\u003ePHY_INDEX\u003c/var\u003e | Delete a phy |\n| add_device_to_phy \u003cvar translate=\"no\"\u003eDEVICE_INDEX\u003c/var\u003e \u003cvar translate=\"no\"\u003ePHY_INDEX\u003c/var\u003e | Add a device to phy |\n| del_device_from_phy \u003cvar translate=\"no\"\u003eDEVICE_INDEX\u003c/var\u003e \u003cvar translate=\"no\"\u003ePHY_INDEX\u003c/var\u003e | Delete a device from phy |\n| add_remote \u003cvar translate=\"no\"\u003eHOSTNAME\u003c/var\u003e \u003cvar translate=\"no\"\u003ePORT PHY_TYPE\u003c/var\u003e | Add a remote Rootcanal as device and register it to phy |\n\n| Device type and args |\n|-----------------------------------------------------------------------------------------------------------------------------------------|\n| beacon \u003cvar translate=\"no\"\u003e[MAC_ADDRESS]\u003c/var\u003e \u003cvar translate=\"no\"\u003e[ADVERTISE_INTERVAL]\u003c/var\u003e |\n| scripted_beacon \u003cvar translate=\"no\"\u003e[MAC_ADDRESS]\u003c/var\u003e \u003cvar translate=\"no\"\u003e[CONFIG_PATH]\u003c/var\u003e \u003cvar translate=\"no\"\u003e[EVENTS_PATH]\u003c/var\u003e |\n| keyboard \u003cvar translate=\"no\"\u003e[MAC_ADDRESS]\u003c/var\u003e \u003cvar translate=\"no\"\u003e[ADVERTISE_INTERVAL]\u003c/var\u003e |\n| loopback \u003cvar translate=\"no\"\u003e[MAC_ADDRESS]\u003c/var\u003e \u003cvar translate=\"no\"\u003e[ADVERTISE_INTERVAL]\u003c/var\u003e |\n| sniffer |"]]