如何使用開發者支援功能?
MuMuPlayer Mac 版 能夠協助開發者進行應用程式開發與除錯。我們目前支援透過命令列工具管理 Android 裝置、透過 ADB 連接 Android 裝置,以及方便地修改網路連線與飛航模式狀態等功能。您可以參考以下文件,充分發揮 MuMuPlayer Mac 版 的效能!(注意:請升級至 1.5.4 以上版本以使用相關功能。)
功能入口與介紹
開發者相關功能位於 MuMuPlayer Mac 版 及每個 Android 裝置的頂部選單列。
開啟 MuMuPlayer Mac 版,點擊「開發者」即可找到「開啟命令列工具」,用於控制 MuMuPlayer Mac 版 及多個 Android 裝置。

在每個 Android 裝置上,點擊「開發者」,除了命令列工具外,您還可以找到當前單一 Android 裝置的「開啟 ADB」、「恢復/斷開網路連線」、「啟用飛航模式」等控制選項,以及當前單一 Android 裝置的「開啟開發者設定」捷徑。

在這兩個選單下,您可以找到「閱讀開發者文件」,以獲取最新的開發者功能文件。
1. 開啟命令列工具
1.1 在哪裡找到命令列工具
(1)開啟 MuMuPlayer Mac 版。
(2)點擊頂部選單列「MuMuPlayer Mac 版」。
(3)點擊「開啟命令列工具」。
在命令列工具視窗中,您可以輸入並執行指令。

1.2. 如何使用命令列工具
(1) 取得 MuMuPlayer Mac 版 的伺服器埠口
- 指令:./mumutool port
- 提示:若無法取得 MuMuPlayer Mac 版 的伺服器埠口,則以下所有功能將無法使用。
(2) 取得 Android 裝置資訊
- 指令:./mumutool info <device>
- 參數
: <device> 選擇 Android 裝置。
- 範例:
- ./mumutool info 0 取得第 0 號 Android 裝置資訊
- ./mumutool info 0,2 取得第 0 號與第 2 號 Android 裝置資訊
- ./mumutool info all 取得所有 Android 裝置資訊
(3) 建立 Android 裝置
- 指令:
- ./mumutool create [--type <type>] [--setting <setting>]
- ./mumutool create [--type <type>] [--setting <setting>]
- 參數:
<type>:選擇要建立的 Android 裝置型態。(值:tablet, phone) <setting>:選擇 Android 裝置的更新 config。
- 範例:
- ./mumutool create --type phone 建立一個手機型態的 Android 裝置
- ./mumutool create --setting '{"vmCpuCount":1,"vmMemoryOfMB":1024}' 建立 1 核心、1GB 的 Android 裝置
- ./mumutool create --setting /path/file.json 透過 配置 json 檔案 建立 Android 裝置
配置提示:
Boss Key: "bossKeyEnable" : true
自訂 ADB 埠口: "customAdbPort" : 16384,
瀏海顯示 : "displayCutout" : 0,
動態幀率: "dynamicFpsEnable" : false
當 MuMuPlayer Mac 版 在背景執行時,會自動將幀率降至 : "dynamicFpsLimitToLow" : 15
退出時確認: "exitConfirmEnable" : true
FPS 計數器: "fpsShowEnable" : false
GPU 快速運算: "gpuFastMathEnable" : false
GPU 型號: "Adreno (TM) 640"
緯度: "locationLatitude": "23.11",
經度: "locationLongtitude": "133.32",
海拔高度(公尺): "locationMetersElevation": "",
裝置 MAC 位址: "macAddress" : "92:79:16:57:58:12"
品牌: "phonePropBrand" : "Redmi"
IMEI: "phonePropIMEI" : "869874032137430"
型號: "phonePropMiit" : "23078RKD5C"
名稱: "phonePropModel" : "K60 Ultra"
圖形增強: "renderQualityEnable" : false
DPI: "resolutionDPI" : 240
顯示尺寸: "resolutionWidthHeight" : "1600x900"
Android 裝置 id: "simulationProps" : "android_id=123456"
系統磁碟模式: "systemWritable" : false
MuMu 滑鼠游標樣式: "trackCursorEnable" : false
ADB: "usingNormalADBPort" : true
手把震動幅度: "vibrationAmplitude" : 0.59999999999999998
手把震動時長修正: 0
手把震動時長比例: 0.80000000000000004
CPU: "vmCpuCount" : 3
記憶體: "vmMemoryOfMB" : 3072
裝置名稱: "vmName" : "Android Device"
Root 權限: "vmRootEnable" : false
自動螢幕旋轉: "windowAutoRotationEnable" : true
自訂 ADB 埠口號碼:"customAdbPort":12345
提示:部分設定需於下次啟動後生效。
file.json 詳細資訊:
{
"bossKeyEnable" : true,
"customAdbPort" : 16384,
"displayCutout" : 0,
"dynamicFpsEnable" : false,
"dynamicFpsLimitToLow" : 15,
"exitConfirmEnable" : true,
"fpsShowEnable" : false,
"gpuFastMathEnable" : false,
"gpuPropModel" : "Adreno (TM) 640",
"locationLatitude" : "23.11",
"locationLongtitude" : "133.32",
"locationMetersElevation" : " ",
"macAddress" : "92:79:16:57:58:66",
"maxFpsLimit" : 144,
"phonePropBrand" : "Redmi",
"phonePropIMEI" : "869874032137430",
"phonePropMiit" : "23078RKD5C",
"phonePropModel" : "K60 Ultra",
"renderQualityEnable" : false,
"resolutionDPI" : 240,
"resolutionWidthHeight" : "1600x900",
"systemWritable" : false,
"trackCursorEnable" : false,
"usingNormalADBPort" : true,
"vmCpuCount" : 3,
"vmMemoryOfMB" : 3072,
"vmName" : "Android Device",
"vmRootEnable" : false,
"windowAutoRotationEnable" : true
"customAdbPort":12345
}
(4) 複製/刪除/開啟/關閉/重啟 Android 裝置
- 指令:
- 複製:./mumutool clone <device>
- 刪除:./mumutool delete <device>
- 開啟:./mumutool open <device>
- 關閉:./mumutool close <device>
- 重啟:./mumutool restart <device>
- 複製:./mumutool clone <device>
- 參數:
<device>:選擇 Android 裝置。
- 範例:
- ./mumutool clone 0 複製第 0 號 Android 裝置
- ./mumutool delete 0,2 刪除第 0 號與第 2 號 Android 裝置
- ./mumutool open all 開啟所有 Android 裝置
- ./mumutool close 0 關閉第 0 號 Android 裝置
(5) 設定 Android 裝置
- 指令:
- ./mumutool config<device>
[--setting<setting> ]
- ./mumutool config<device>
- 參數:
<device>:選擇 Android 裝置。 <setting>:選擇 Android 裝置的更新配置。
- 範例:
- ./mumutool config 0 --setting '{"vmCpuCount":1,"vmMemoryOfMB":1024}' 將第 0 號 Android 裝置設定為 1 核心、1GB
- ./mumutool config 0,2 --setting /path/file.json 透過配置 json 檔案設定第 0 號與第 2 號 Android 裝置
- 提示:有關「配置提示」及「file.json 詳細資訊」,可參考「(3) 建立 Android 裝置」。
(6) 控制 Android 裝置
① 關於 App
- 指令:
- ./mumutool control <device> [--action <action>] [--package <package>] [--path <path>]
- ./mumutool control <device> [--action <action>] [--package <package>] [--path <path>]
- 參數:
<device>:選擇 Android 裝置。 <action>:選擇 Android 裝置要觸發的動作。(值:open_app, close_app, install_apk, uninstall_app, app_status) <package>:選擇 Android 裝置的應用程式包名。open_app、close_app、uninstall_app、app_status 動作必填。 <path>:選擇要安裝的 apk/apks/xapk 檔案路徑。install_apk 動作必填。
- 範例:
- ./mumutool control 0,2 --action install_apk --path /path/QooApp.apk 為第 0 號與第 2 號 Android 裝置安裝 apk
- ./mumutool control 0 --action open_app --package com.qooapp.qoohelper 開啟第 0 號 Android 裝置的 apk
- ./mumutool control 0 --action close_app --package com.qooapp.qoohelper 關閉第 0 號 Android 裝置的 apk
- ./mumutool control 0 --action uninstall_app --package com.qooapp.qoohelper 卸載第 0 號 Android 裝置的 apk
- ./mumutool control 0 --action app_status --package com.qooapp.qoohelper 查詢第 0 號 Android 裝置的 App 狀態
- 提示:
- 需啟動對應的模擬器,指令才會生效。
② 關於工具
- 指令:
- ./mumutool control <device> [--action <action>] [--type <type>]
- ./mumutool control <device> [--action <action>] [--type <type>]
- 參數:
<device>:選擇 Android 裝置。 <action>:run_tool <type>:選擇 Android 裝置的工具列類型。run_tool 動作必填。(值:goBack, goHome, showActivity, showVolumePanel, addVolume, reduceVolume, muteVolume, rotation, shake)
- 範例:
- ./mumutool control 0 --action run_tool --type goBack 啟動第 0 號 Android 裝置的「返回」
- ./mumutool control 0 --action run_tool --type goHome 啟動第 0 號 Android 裝置的「首頁」
- ./mumutool control 0 --action run_tool --type showActivity 啟動第 0 號 Android 裝置的「開啟最近應用」
- ./mumutool control 0 --action run_tool --type showVolumePanel 顯示第 0 號 Android 裝置的音量面板
- ./mumutool control 0 --action run_tool --type addVolume 增加第 0 號 Android 裝置音量 1
- ./mumutool control 0 --action run_tool --type reduceVolume 減少第 0 號 Android 裝置音量 1
- ./mumutool control 0 --action run_tool --type muteVolume 切換第 0 號 Android 裝置的靜音
- ./mumutool control 0 --action run_tool --type rotation 變更第 0 號 Android 裝置的螢幕旋轉
- ./mumutool control 0 --action run_tool --type shake 啟動第 0 號 Android 裝置的「搖一搖」
- 提示:
- 需啟動對應的模擬器,指令才會生效。
③ 關於 CMD
- 指令:
- ./mumutool control <device> [--action <action>] [--cmd <cmd>]
- ./mumutool control <device> [--action <action>] [--cmd <cmd>]
- 參數:
<device>:選擇 Android 裝置。 <action>:run_tool <cmd>:選擇要由 Android 裝置執行的指令。run_cmd 動作必填。
- 範例:
- ./mumutool control 0 --action run_cmd --cmd "input tap 300 400" 在第 0 號 Android 裝置執行 CMD
④ 關於裝置儲存(匯入/匯出/移動你的 Android 裝置)
匯入你的 Android 裝置
- 指令:
- ./mumutool import [--count <count>] [--path <path>]
- ./mumutool import [--count <count>] [--path <path>]
- 參數:
<count>:選擇一個或多個 /path/file.mad 檔案路徑以匯入 Android 裝置。 <path>:選擇 /path/file.mad 檔案路徑以匯入 Android 裝置。
- 範例:
- ./mumutool import --count 1 --path /path/file1.mad --path /path/file2.mad 透過連結方式以 file1.mad、file2.mad 檔案匯入 Android 裝置
- ./mumutool import --count 2 --path /path/file.mad 透過複製方式以 file.mad 檔案匯入 Android 裝置
- 提示:
- count=1,mad 檔案將以新增方式匯入(預設)。
- count>=2,mad 檔案將以複製方式匯入。
匯出你的 Android 裝置
- 指令:
- ./mumutool export <device>
[--dir <dir> ]
- ./mumutool export <device>
- 參數:
<device>:選擇 Android 裝置。 - <dir>:檔案目錄。
- 範例:
- ./mumutool export 0 --dir /path/ 匯出第 0 號 Android 裝置至指定目錄
- ./mumutool export 0,2 --dir /path/ 匯出第 0 號與第 2 號 Android 裝置至指定目錄
- ./mumutool export all --dir /path/ 匯出所有 Android 裝置至指定目錄
移動你的 Android 裝置
- 指令:
- ./mumutool move
[--dir<dir> ]
- ./mumutool move
- 參數:
<device>:選擇 Android 裝置。 <dir>:檔案目錄。
- 範例:
- ./mumutool move 0 --dir /path/ 移動第 0 號 Android 裝置至指定目錄
- ./mumutool move 0,2 --dir /path/ 移動第 0 號與第 2 號 Android 裝置至指定目錄
- ./mumutool move all --dir /path/ 移動所有 Android 裝置至指定目錄
⑤ 關於裝置顯示(顯示/隱藏你的 Android 裝置)
- 顯示所有 Android 裝置
- 指令: ./mumutool show
- 隱藏所有 Android 裝置
- 指令: ./mumutool hide
2. 開啟 ADB
MuMuPlayer Mac 版 支援透過 ADB 連接 Android 裝置。啟動 Android 裝置後,點擊 Mac 選單列「開發者」下的「開啟 ADB(裝置埠口號)」即可自動開啟 ADB shell,方便開始執行其他指令。
若需查詢正在執行的 Android 裝置埠口號,也可在此處查詢。

3. 恢復/斷開網路連接
MuMuPlayer Mac 版 支援斷開及恢復 Android 裝置的網路連接,協助開發者測試其應用程式在斷線情況下的表現。
3.1. 網路狀態提示
當 Android 裝置已連接網路時,WLAN 圖示會顯示在 Android 裝置右上角的通知欄,您可以由此判斷裝置已連接網路;若網路已斷開,則該圖示不會顯示。

3.2 恢復/斷開網路連接
當你連接到網際網路時,可以點擊「開發者 - 斷開網路連接」來斷開網際網路,進行相同操作即可恢復網路連接。

4. 啟用/停用飛行模式
MuMuPlayer Mac 版 支援啟用 Android 裝置的飛行模式,以協助開發者測試應用程式在飛行模式下的表現。
4.1 飛行模式狀態提示
當 Android 裝置處於飛行模式時,通知欄右上角會顯示一個飛機圖示,您可以由此判斷飛行模式是否已開啟;若未開啟,則不會顯示該圖示。

4.2 啟用/停用飛行模式
當飛行模式關閉時,您可以點擊「開發者 - 啟用飛行模式」來開啟飛行模式,關閉飛行模式的操作方式相同。

請注意,當您開啟飛航模式時,您將同時與網路斷開連接,如有需要,您可以手動再次恢復網路連接。
5. 開啟開發者設定
MuMuPlayer Mac 版 將常用的開發者設定整合在「開發者」選項下,您可以從選單列「開發者 - 開啟開發者設定」快速開啟。

MuMuPlayer Mac 版 為開發者提供以下設定項目:
- Root 權限:您可以啟用手機的 Root 權限,適用於存取或修改系統檔案與目錄、檢視系統層級日誌、網路流量分析或封包擷取等。
- 系統磁碟模式:您可以選擇「可寫入」來修改系統磁碟,適用於更改系統屬性、修改內建 APK 及 Magisk 等。
- 劉海顯示:您可以選擇不同風格的劉海螢幕(無劉海、中置挖孔、左上挖孔、右上挖孔、中置劉海、水滴型),適用於測試應用介面在不同劉海螢幕下的顯示效果。
- ADB:預設勾選「使用 ADB 預設埠(5555)」。啟用後,除了 MuMu Android 裝置外,其他裝置也可自動透過 ADB 預設埠連接。此選項為全域設定,對所有 MuMu Android 裝置生效。
MuMuPlayer Mac 版 將持續優化並適配開發者功能。如有其他問題,歡迎隨時聯絡我們反饋!
文章已到底