adb-connect.js 882 B

123456789101112131415161718192021222324252627
  1. #!/usr/bin/env node
  2. const { execSync } = require('child_process')
  3. const path = require('path')
  4. // 从配置文件读取 ADB 路径
  5. const config = require(path.join(__dirname, '..', '..', 'configs', 'config.js'))
  6. const projectRoot = path.resolve(__dirname, '..', '..')
  7. const adbPath = config.adbPath?.path
  8. ? path.resolve(projectRoot, config.adbPath.path)
  9. : path.join(projectRoot, 'lib', 'scrcpy-adb', 'adb.exe')
  10. const deviceIp = process.argv[2]
  11. const devicePort = process.argv[3] || '5555'
  12. if (!deviceIp) {
  13. process.exit(1)
  14. }
  15. const connectCommand = `"${adbPath}" connect ${deviceIp}:${devicePort}`
  16. const connectOutput = execSync(connectCommand, { encoding: 'utf-8', timeout: 500 })
  17. const connectSuccess = connectOutput.trim().includes('connected') || connectOutput.trim().includes('already connected')
  18. if (connectSuccess) {
  19. process.exit(0)
  20. } else {
  21. process.exit(1)
  22. }