상황 요약
Android Studio에서 실제 휴대폰을 USB로 연결해 앱 화면을 보던 중,
노트북에서 로컬로 실행 중인 백엔드 서버 API와 연동을 시도했지만,
네트워크 요청이 전혀 날아가지 않거나, Failed to connect 에러가 발생했던 상황입니다.
Retrofit 사용 시 onFailure()로 떨어지며 서버 응답이 아예 도달하지 않음
원인 | 설명 |
---|---|
❌ localhost 사용 | 휴대폰 기준의 localhost는 자기 자신, 즉 노트북이 아님 |
❌ 10.0.2.2 사용 | 에뮬레이터 전용 IP, 실제 기기에서는 동작 안 함 |
❌ 올바른 IP 아님 | 노트북의 내부 IP를 사용해야 연결 가능 |
터미널에서 IP 확인
ipconfig
ifconfig
→ 나오는 IPv4 주소
확인 (예: 192.168.0.23
)
이게 실제 기기에서 접근할 주소입니다!
val BASE_URL = "http://192.168.0.23:8000"
RetrofitClient
나 네트워크 모듈에 위 IP를 직접 지정해 주세요.
포트 번호는 서버 실행 시 설정한 값과 동일하게!
문제 | 해결 방법 |
---|---|
앱에서 서버 접속 안 됨 | ipconfig 로 IP 확인 후 BASE_URL 수정 |
localhost , 10.0.2.2 로 접근 실패 | 실기기에서는 사용 불가, IP 직접 사용 |
연결 에러 | 서버를 0.0.0.0 으로 실행하고, 방화벽·네트워크 설정 확인 |
Android 앱에서 로컬 서버 접속이 안 될 때는,
노트북의 IP 주소를 직접 확인하고
그 IP를 BASE_URL로 지정해주는 게 가장 확실한 해결법입니다~!