Android Emulator에서 WiFi 활성화


답변:


126

API 레벨 25 이하를 사용하는 경우 에뮬레이터에서 Wi-Fi를 사용할 수 없습니다.

API 레벨 25 이상의 AVD를 사용하는 경우 에뮬레이터는 시뮬레이션 된 Wi-Fi 액세스 포인트 ( 'AndroidWifi')를 제공하고 Android는 자동으로 여기에 연결합니다.

추가 정보 : https://developer.android.com/studio/run/emulator.html#wifi


1
에뮬레이터에서 VNC 서버를 테스트하고 싶습니다. vnc 서버 앱은 네트워크에 연결하기 위해 Wi-Fi 또는 USB가 필요합니까? 그렇다면 최상의 솔루션은 무엇입니까?
mfq 2013 년

1
@mfq는 실제 기기에서 실행되거나 오픈 소스 VNC 앱을 사용하여 수정하지 않도록 수정했습니다.
Chris Stratton 2014 년

11
@salman khalid 시간을 낭비하지 마십시오? 사실인가요? 프로그래머의 관점에서 제가 본 것은 실제 장치 구입 비용을 최소화해야한다는 것입니다. 앱을 테스트하고 싶다면 얼마나 많은 장치가 필요할까요? OMG .... 모든 프로그래머가 다른 프로그래머만큼 부자 인 것은 아닙니다. 에뮬레이터가 작동하도록합시다 ... 그래서 우리는 다른 앱을 만들고 있습니다 ... 맞습니다, imz
gumuruh

4
"낭비 시간"도 내 관심을 끌었다. 그것은 좋은 대답이 아닙니다. 우리는 필요에 따라 개발에 시간을 낭비합니다;)
포인터 Null

3
2017 년 5 월 17 일 현재 Android 스튜디오 3.0 Canary 1에서 사용할 수 있습니다.
BK

12

분명히 그렇지 않으며 나는 그것이 될 것이라고 기대하지 않았습니다. 그러나 Ivan은 Android 사용자를 탈출 한 좋은 가능성을 제시합니다.

에뮬레이터의 목적은 무엇입니까? 에뮬레이트하는 거 맞죠? 테스트 목적으로-테스터가 제한 사항을 이해하는 경우-에뮬레이터가 Wifi 에뮬레이터를 추가하지 않을 수있는 이유를 알 수 없습니다.

예를 들어 호스트의 기본 인터넷 연결을 사용하여 WiFi 액세스를 에뮬레이션 할 수 있습니다. 분명히 WPA / WEP 차이를 테스트하는 것은 의미가 없지만 적어도 WiFi를 통해 액세스를 전환 할 수 있습니다.

또는 기본 연결을 통해 WiFi 액세스를 에뮬레이션하는 기본 WiFi 에뮬레이터가 있지만 구성을 통해 가짜 WiFi 네트워크 목록과 일치하는 해당 가짜 암호를 제공하여 WPA / WEP를 에뮬레이트 할 수있는 일종의 에뮬레이터 플러그인 구성 가능한 자격 증명 목록과 비교합니다.

모든 아이디어는 에뮬레이터에서 초기 테스트를 수행 한 다음 실제 장치로 이동하는 것입니다.


8
동의합니다. 3G가 에뮬레이션 된 경우 WiFi가 아닌 이유는 무엇입니까? 개발자가 WiFi 상태를 전환 할 수 있도록 허용하기위한 목적으로도 사용됩니다.
Kilizo

1
@Kilizo 여기서 문제는 WiFi 스택이 에뮬레이션하기 매우 무겁고 호스트 연결을 브리징하기위한 지원이 필요하다는 것입니다 (또는 사용할 여분의 WiFi 장치가 있음). VMWare 또는 VirtualBox와 같은 경우에도 가상 머신이 전체 WiFi 장치를 올바르게 사용하도록하는 것은 힘든 일입니다. 셀룰러 연결은 에뮬레이션하기 쉽고 일반적인 인터넷에 연결하기 만하면됩니다. 로컬 네트워킹이나 Android 에뮬레이터가 네트워크 장치를 완전히 제어 할 수 있는지에 대해 걱정할 필요가 없습니다.
sixones

11

현재 안드로이드 에뮬레이터 버전 26.1.3에서는 API 25의 이미지 v8에서 드디어 가능합니다. 최신 API 25 이미지로 업그레이드하기 전에 에뮬레이터를 만든 경우 데이터를 지우거나 삭제해야합니다. 원하는 경우 이미지를 다시 만듭니다.

일부 시스템 이미지에서 Wi-Fi 지원을 추가했습니다 (현재 API 레벨 25 만 해당). "AndroidWifi"라는 ​​액세스 포인트를 사용할 수 있으며 Android가 자동으로 연결됩니다. 명령 줄 매개 변수 -feature -Wifi를 사용하여 에뮬레이터를 실행하여 Wi-Fi 지원을 비활성화 할 수 있습니다.

에서 https://developer.android.com/studio/releases/emulator.html#26-1-3


안녕하세요, Wi-Fi 기능을 활성화하려면 무엇이 필요합니까? 에뮬레이터 설정에서 와이파이 옵션이 자동으로 비활성화되기 때문입니다.
NehaK

Image Android 7.1.1 (Google Apis), API 레벨 25, ABI x86에서 작동하는지 확인할 수 있습니다. 이상한 점은 최신 이미지에서는 작동하지 않는다는 것입니다. 예 : API 27, ABI x86 (여기서 Wi-Fi를 활성화 할 수 있지만 자동으로 다시 꺼집니다)
TmTron

당신 8 월 2017 나는 Google에서받은 응답이 있었다, @TmTron 맞다You're right about API 26, it's in the works and will be available in the future. As for backporting to earlier versions that's something we would like to do although I can't make any promises as to when that will happen or how far back we will go.
에릭 라벨 씨

에뮬레이터 버전 27.1.2의 경우 Wi-Fi는 API 레벨 25 및 26에서 작동하지만 27에서는 작동하지 않습니다.
CanC

10

(여기 다른 곳 에서 내 대답을 반복합니다 .)

이론적으로 Linux (안드로이드 기반 커널)에는 WiFi를 시뮬레이션하는 mac80211_hwsim 드라이버 가 있습니다. WiFi 네트워크를 구성하는 여러 WiFi 장치 (액세스 포인트 및 다른 WiFi 장치 등)를 설정하는 데 사용할 수 있습니다.

Linux에서 WiFi 프로그램을 테스트하는 데 유용합니다. 아마도 사용자 모드 리눅스리눅스가있는 다른 고립 된 가상 "박스" 에서도 가능 합니다.

이론적으로이 드라이버는 실제 WiFi 장치가없는 (또는 사용하고 싶지 않은) Android 시스템 및 일부 종류의 Android 에뮬레이터에서 테스트에 사용할 수 있습니다. 아마도 Android-x86에서이 드라이버를 사용하거나 VirtualBox에서 실행되는 android-x86에서 테스트 용으로 관리 할 수 ​​있습니다.


2
Wi-Fi를 Android 앱에서 "wifi"로 보이게 만드는 대부분은 사용자 모드 Android 런타임 내에 있습니다. 변경해야 할 모든 것이 보고 일 가능성이 있습니다. 에뮬레이터 네트워킹에는 wifi보다 3g 제공 업체와 더 일치하는 속성이 있습니다. 특히 호스팅 개발 시스템의 루프백 인터페이스에서 오는 연결 외에는 들어오는 연결을 허용하지 않는 네트워크 주소 변환기입니다. Wi-Fi라고 부르도록 플랫폼을 수정하는 것은 일종의 작업이지만 연결할 수있는 유일한 로컬 피어는 개발 머신입니다.
Chris Stratton 2014 년

3

API 24 또는 이전 버전을 사용하는 경우 에뮬레이터는 Wi-Fi 용 가상 하드웨어를 제공하지 않습니다. Android 개발자 웹 사이트에서 :

API 레벨 25 이상의 AVD를 사용하는 경우 에뮬레이터는 시뮬레이션 된 Wi-Fi 액세스 포인트 ( 'AndroidWifi')를 제공하고 Android는 자동으로 여기에 연결합니다.

명령 줄 매개 변수 -feature -Wifi를 사용하여 에뮬레이터를 실행하여 에뮬레이터에서 Wi-Fi를 사용 중지 할 수 있습니다.

https://developer.android.com/studio/run/emulator.html#wi-fi

지원되지 않는 것

Android Emulator에는 다음에 대한 가상 하드웨어가 포함되어 있지 않습니다.

  • 블루투스
  • NFC
  • SD 카드 삽입 / 꺼내기
  • 장치 연결 헤드폰
  • USB

Android Wear 용 시계 에뮬레이터는 개요 (최근 앱) 버튼, D- 패드 및 지문 센서를 지원하지 않습니다.

( https://developer.android.com/studio/run/emulator.html#about 에서 자세히 알아보기 )

https://developer.android.com/studio/run/emulator.html#wi-fi


12
-1 스크린 샷은 장치가 WiFi가 아닌 4G를 통해 연결되어 있음을 보여 주므로 질문에 대한 답변, 해결 또는 유용한 정보를 제공하지 않습니다.
sixones

1
@sixones 그렇다고 반드시 WiFi에 연결되어 있지 않다는 의미는 아닙니다. 4G는 에뮬레이션 목적으로 표시되며 (예 : 애플리케이션이 4G 대 3G 인 경우 수행 할 작업) 설정을 통해 변경할 수 있습니다. Wi-Fi가 꺼져 있거나 연결되지 않은 것으로 표시 되더라도 내 컴퓨터가 Wi-Fi에 연결되어 있기 때문에 Google을 열 수 있습니다. 따라서 웹 사이트를 보거나 다운로드 할 수 있지만 에뮬레이션 목적으로 WiFi 연결을 에뮬레이션 할 수 없으므로이를 위해서는 WiFi에 연결된 실제 장치가 필요합니다.
Stardust

2
@Stardust 정확합니다. 귀하의 답변은 셀룰러 연결을 사용할 수 있음을 보여주는 것 외에는 질문에 대한 답변을 제공하지 않습니다. Android UI는 매우 간단합니다. Wi-Fi에 연결된 경우 알림 표시 줄에 표시되고 발생한 상황에 따라 동시에 셀룰러 연결을 표시 할 수도 있습니다. 당신이 보여준 것은 Wi-Fi에 연결된 호스트 머신에서 에뮬레이터를 사용할 수 있다는 것입니다.이 질문이 요구하는 것은 아닙니다.
sixones

API에서 25 + 당신이 사용할 수있는 위스콘신-Fi를 developer.android.com/studio/run/emulator.html#wi-fi 이 답변은 이제 구식이되어
Menuka Ishan

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.