昨天成功做出了第一個 Electron 視窗,但目前還只是一個 HelloWorld 程式
距離它變成一個可用的工具程式還有很長的一段路要走(
我先去 Google 官網下載了 Android SDK Platform Tools,裡面就有 ADB 工具:
adb.exe
+ 一些 dll 檔案adb
執行檔adb
執行檔我決定把 ADB 工具直接放到專案裡:
然後寫一個函數來根據不同平台找到對應的 ADB (我先只放 Arm Mac 跟 x86 Windows):
function getADBPath() {
const platform = process.platform;
const arch = process.arch;
const basePath = path.join(__dirname, 'adb');
if (platform === 'win32') {
return path.join(basePath, 'win-x64/adb.exe');
} else if (platform === 'darwin') {
return path.join(basePath, 'mac-arm64/adb');
}
// 之後再加 Linux 支援
}
把 ADB 檔案放好後,修改程式碼來使用內建的 ADB:
const adbPath = getADBPath();
exec(`"${adbPath}" version`, (error, stdout, stderr) => {
if (error) {
console.log('ADB 錯誤:', error);
return;
}
console.log('ADB 版本:', stdout);
});
接下來測試看看能不能抓到連接的平板
我用 USB 線連接手機,開啟開發者選項和 USB 偵錯
exec(`"${adbPath}" devices`, (error, stdout, stderr) => {
console.log(stdout);
});
結果顯示:
List of devices attached
XXXXXXXXXXXXXXX device
明天要來處理使用者介面,把這些功能包裝成好看好用的 GUI。