검색

기기

adb 연결 안됨 해결: 블루스택, LD플레이어 에뮬레이터 ADB 오류

Macro Automation Studio에서 BlueStacks, LDPlayer, MuMu, MEmu, Nox의 adb 연결 안됨, 기기 없음, offline 오류를 직접 확인할 adb 명령과 함께 해결합니다.

  • Windows
  • Mac
  • 에뮬레이터
  • 휴대폰
  • 스튜디오
중급 업데이트 11분 소요
이 페이지의 내용
  1. MAS가 adb를 쓰는 방식
  2. 직접 연결 확인하기
  3. ADB 설정 위치
  4. 블루스택 adb 연결 안됨과 그 밖의 에뮬레이터 오류
  5. ADB가 동작하지 않음
  6. ADB 기기를 찾을 수 없음
  7. 기기가 offline으로 표시됨
  8. 잘못되었거나 바뀐 ADB 포트
  9. 여러 인스턴스
  10. Mac에서의 adb
  11. MAS가 스캔하는 에뮬레이터 ADB 포트
  12. 그래도 안 될 때

Macro Automation Studio(MAS)의 모든 로컬 기기는 127.0.0.1:<port>로의 adb 연결입니다. adb 연결 안됨 상태로 기기가 시작되지 않을 때 원인은 거의 항상 몇 가지 문제 중 하나이며, BlueStacks, LDPlayer, MuMu Player, MEmu, Nox에 같은 해결법이 적용됩니다. 이 페이지는 adb 연결 안됨 문제를 직접 실행해 볼 수 있는 명령과 함께 정리합니다.

MAS가 adb를 쓰는 방식

순서를 알면 오류를 읽을 수 있습니다. 기기에서 Start를 클릭하면 MAS는:

  1. 자체 adb 빌드로 adb start-server를 실행합니다.
  2. adb devices -l로 기기를 나열합니다. 해당 포트가 이미 있으면 먼저 끊습니다.
  3. adb connect 127.0.0.1:<port>를 실행하고 출력을 읽습니다. “cannot connect”, “failed to connect”, “unable to connect”, “connection refused”, “bad port” 중 하나가 나오면 기기가 “unable to connect to device”로 실패합니다.
  4. 이후 모든 명령을 adb -s 127.0.0.1:<port> shell ...로 보냅니다: 탭, 스와이프, 스크린샷용 screencap, 화면 크기용 wm size.
  5. 앱이 닫힐 때 adb kill-server를 실행합니다.

Windows에서 MAS는 adb를 C:\ProgramData\MacroAutomationStudio\3rdparty\platform-tools에 함께 제공합니다. Mac에서는 adb가 앱 번들 안에 있으며, PATH와 Homebrew가 대안입니다.

직접 연결 확인하기

터미널을 열고 MAS가 실행하는 것과 같은 단계를 실행합니다. 에뮬레이터 설정의 포트를 사용하세요.

bash
adb devices
adb connect 127.0.0.1:5555
adb -s 127.0.0.1:5555 shell wm size

정상적인 에뮬레이터는 마지막 줄에 Physical size: 540x960 같은 값으로 응답합니다. 출력이 이상하면 서버를 초기화하고 다시 시도합니다:

bash
adb kill-server
adb start-server
adb connect 127.0.0.1:5555

adb 위치: 에뮬레이터마다 자체 사본이 있고(Nox는 bin 폴더에 nox_adb.exe, MuMu Player는 설치 폴더에 adb_server.exe), MAS는 Windows에 하나를 함께 제공하며, Mac에서는 brew install android-platform-tools로 표준 빌드를 받습니다.

ADB 설정 위치

에뮬레이터ADB 켜기첫 인스턴스 포트추가 인스턴스
BlueStacks 5Settings, Advanced 탭, Android Debug Bridge 켜기5555, 또는 5555가 사용 중이면 다른 포트인스턴스마다 자기 포트. MAS는 5555부터 8500까지 인정
LDPlayerSettings, Other settings, ADB debuggingOpen local connection으로 설정, Save settings 클릭, 인스턴스 재시작55555557, 5559 등. MAS는 5599까지의 홀수 포트 인정
MuMu Player포트는 Settings, ADB port 아래 또는 Device Diagnostic에 표시16384 (이전 버전: 7555)인스턴스마다 32 추가: 16416, 16448 등
MEmu기본으로 켜짐. 호스트 포트가 Android 포트 5555에 대응2150321513, 21523 등
Nox기본으로 켜짐. bin 폴더에서 nox_adb.exe connect 127.0.0.1:62001로 연결6200162001 위로 63000까지

공식 페이지: BlueStacks, LDPlayer, MuMu Player, MEmu, Nox.

블루스택 adb 연결 안됨과 그 밖의 에뮬레이터 오류

ADB가 동작하지 않음

아무것도 연결되지 않습니다: MAS의 Port 목록이 비어 있고 adb connect가 “cannot connect” 또는 “connection refused”를 표시합니다.

원인: 에뮬레이터에서 ADB가 꺼져 있거나 인스턴스 부팅이 끝나지 않았습니다. BlueStacks와 LDPlayer는 ADB가 꺼진 채로 설치됩니다.

  • 위 표를 참고해 ADB를 켜고, 공식 안내가 요구하는 곳에서는 인스턴스를 다시 시작하세요.
  • Android 홈 화면이 뜰 때까지 기다린 뒤 Add New Device에서 Refresh를 클릭하세요.
  • 터미널에서 adb connect 127.0.0.1:<port>를 실행하세요. “connected to 127.0.0.1:“가 나오면 MAS도 연결됩니다.
  • 보안 도구가 로컬 연결을 막고 있다면 adb와 에뮬레이터를 허용하세요.

ADB 기기를 찾을 수 없음

기기 카드가 Error로 끝나고 로그에 “unable to connect to device”가 나오거나, 스크립트가 첫 호출에서 DeviceNotConnectedError를 발생시킵니다.

원인: 포트에 아무것도 없거나, 에뮬레이터가 닫혔거나, 실행 시작 후 연결이 끊어졌습니다.

  • 기기 카드의 포트와 에뮬레이터 설정의 포트를 비교하세요. Edit Device로 고칩니다.
  • adb devices를 실행하세요. 항목이 없으면 adb connect 127.0.0.1:<port>를 실행하고 응답을 읽으세요.
  • 에뮬레이터 인스턴스를 다시 시작한 뒤 Start를 다시 클릭하세요. MAS는 시작할 때마다 처음부터 다시 연결합니다.
  • 에뮬레이터보다 MAS를 먼저 시작했다면 Refresh를 클릭해 포트 목록을 최신으로 만드세요.

기기가 offline으로 표시됨

adb devices127.0.0.1:<port> offline이 나오고 명령이 멈추거나 아무것도 반환하지 않습니다.

원인: adb 서버가 오래된 항목을 갖고 있거나, 버전이 다른 두 adb 빌드가 서버를 두고 다투거나, 에뮬레이터가 아직 부팅 중입니다.

  • adb kill-server를 실행한 뒤 adb connect 127.0.0.1:<port>를 다시 실행하세요.
  • MAS가 실행되는 동안 자체 adb 서버를 시작하는 다른 도구(Android Studio, 다른 에뮬레이터의 콘솔)를 닫으세요.
  • 에뮬레이터 인스턴스를 다시 시작하세요. “null or offline”에 대한 Nox의 공식 조언도 같습니다: Nox를 다시 시작하고 다시 연결하세요.
  • 부팅이 끝날 때까지 기다리세요. 아직 로딩 중인 인스턴스는 offline으로 응답합니다.

잘못되었거나 바뀐 ADB 포트

어제는 되던 기기가 같은 설정으로 오늘 실패합니다.

원인: 에뮬레이터는 인스턴스가 시작될 때 포트를 배정하며, 인스턴스를 만들거나 복제하거나 삭제하면 포트가 밀립니다. BlueStacks는 5555가 사용 중이면 다른 포트로 옮깁니다.

  • 인스턴스가 부팅된 뒤 에뮬레이터 설정이나 adb devices에서 현재 포트를 읽으세요.
  • MAS에서 기기 카드를 열고 Edit Device를 클릭해 새 포트를 설정하고 저장하세요.
  • 안정적인 구성을 위해 에뮬레이터의 다중 인스턴스 관리자에서 인스턴스 순서를 유지하고 첫 인스턴스를 삭제하지 마세요.

여러 인스턴스

첫 인스턴스만 연결되거나 MAS가 “Port is already in use”를 표시합니다.

원인: 인스턴스마다 자기 포트와 자기 기기 항목이 필요하며, 포트는 한 번만 추가할 수 있습니다.

  • 인스턴스마다 그 인스턴스의 포트로 기기를 하나씩 추가하세요. 범위는 위 표에 있습니다: LDPlayer와 MuMu Player는 홀수 포트 5555, 5557, 5559를 쓰고, MuMu Player 12는 인스턴스마다 32를, MEmu는 10을 더하며, Nox는 62001부터 올라갑니다.
  • 카드를 쉽게 구별할 수 있도록 인스턴스 이름과 맞는 기기 이름을 주세요.
  • 인스턴스를 하나씩 시작하고 Refresh를 클릭해 새 포트가 목록에 나타나게 하세요.
  • 같은 매크로, 다른 계정: 설정 프로필을 써서 기기마다 자기 인수를 따르게 하세요. 기기 그룹을 참고하세요.

Mac에서의 adb

MAS가 “ADB executable not found. Please install ADB using your package manager”를 표시합니다.

원인: 앱 번들 안의 adb를 실행할 수 없었고 PATH나 /opt/homebrew에서도 아무것도 찾지 못했습니다.

  • brew install android-platform-tools로 표준 빌드를 설치한 뒤 MAS를 다시 시작하세요.
  • 터미널에서 which adbadb version으로 확인하세요. MAS는 앱 번들, PATH, /opt/homebrew/bin, /usr/local/bin 순으로 찾습니다.
  • Mac에서는 에뮬레이터도 그 Mac에서 실행되어야 합니다. MAS는 항상 127.0.0.1로 연결합니다.
  • 사용하는 Mac 에뮬레이터 빌드에 ADB가 전혀 없다면 클라우드 기기는 로컬 adb 없이 실행됩니다.

MAS가 스캔하는 에뮬레이터 ADB 포트

MAS는 adb devices가 아니라 실행 중인 프로세스에서 Port 목록을 만듭니다. 프로세스 이름과 포트 범위가 모두 맞을 때만 포트를 남깁니다:

에뮬레이터프로세스 이름인정하는 포트
BlueStacksHD-Player, BlueStacks5555부터 8500까지
LDPlayerLdVBoxHeadless, Ld9BoxHeadless, dnplayer, LDPlayer, VBoxNetNAT5555부터 5599까지의 홀수 포트
NoxNoxVMHandle62001부터 63000까지
MEmuMEmuHeadless, MEmuHyper21503과 3으로 끝나는 29993까지의 모든 포트
MuMu PlayerNemuHeadless, MuMu5555부터 5599까지의 홀수 포트, 7555, 16384부터 16576까지, 26624부터 27264까지

127.0.0.1, 0.0.0.0 또는 모든 인터페이스에 바인딩된 포트만 고려합니다. 이 규칙 밖의 포트는 목록에 나타나지 않지만, Custom Port는 1024부터 65535까지 어떤 값이든 받으므로 MAS가 모르는 에뮬레이터도 직접 추가할 수 있습니다.

그래도 안 될 때

기기 카드의 Logs(Save 버튼이 파일로 저장합니다), adb devices의 출력, 에뮬레이터 이름과 버전을 모아 Discord에서 묻거나 support@automationmacro.com으로 이메일을 보내세요. 일반적인 앱 문제는 문제 해결 페이지에 있습니다.

다음 단계

관련 페이지

이 페이지가 도움이 되었나요?

궁금한 점이 있으신가요? Discord에서 질문하기