Как настроить параметры Интернета для эмулятора Android?
Я использовал этот метод, чтобы получить доступ к Интернету из моего эмулятора Android эмулятора -http-proxy <<proxy-name>> -avd <<avd_name>>
Это работает, но это лучший способ сделать это? Это просто не правильно, что мне нужно открыть эмулятор из командной строки и не могу просто сделать это из Eclipse или что-то еще.
Не могу найти интернет-опцию в "AVD Manager".
12 ответов
Вы также можете попробовать явно указать настройки DNS-сервера, это работает для меня.
В Затмении:
Window> Preferences> Android> Launch
Параметры эмулятора по умолчанию: -dns-server 8.8.8.8,8.8.4.4
По умолчанию вы должны иметь возможность переключать доступ в Интернет к вашему эмулятору с помощью F8 (в Windows) и Fn + F8 (в Mac OS X) - я думаю, что F8 также работает для Linux, но я не уверен на 100%.
С помощью этого ярлыка вы получите ACTION_BACKGROUND_DATA_SETTING_CHANGED.
Надеюсь, это поможет.
Для записей, поскольку это старый пост, и так как никто не упомянул его, проверьте, не забыли ли вы (как я) установить флаг android.permission.INTERNET в AndroidManifest.xml как, то есть:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.android.webviewdemo">
<uses-permission android:name="android.permission.INTERNET"/>
<application android:icon="@drawable/icon">
<activity android:name=".WebViewDemo" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
-http-proxy может быть установлен в eclipse следующим образом:
- Окно меню
- Настройки подменю
- В диалоговом окне "Настройки" нажмите "Android" в левой части. Нажмите "Запуск рядом с параметрами эмулятора по умолчанию": введите ur -http-proxy
Добавьте поддержку GSM модема при создании AVD на ваших виртуальных устройствах из Android SDK и AVD Manager...
Привет, я также столкнулся с той же проблемой, решается с помощью следующих шагов:
причина 1:
Добавить интернет-разрешение в вашем приложении для Android
причина 2:
Проверьте вручную, что ваше приложение по умолчанию может получить доступ к Интернету или нет, если не проблема вашего эмулятора, проверьте подключение к Интернету на вашем компьютере.
попробуйте ниже метод подключения сети в вашем компьютере
попробуйте явно указать настройки DNS-сервера, у меня это сработало.
В Затмении:
Window> Preferences> Android> Launch
Параметры эмулятора по умолчанию: -dns-server 8.8.8.8,8.8.4.4**
причина 3:
check: проверьте, используете ли вы более одного интернет-соединения с вашим компьютером, например, локальная сеть, вторая - модем, поэтому отключите все локальные сети или модем.
Именно настройка DNS сделала меня. Если вы используете плагины Eclipse или Netbeans, вы можете установить их с помощью параметров эмулятора по умолчанию или параметров эмулятора соответственно. Вы также можете использовать команду set из командной строки, если запускаете эмулятор из CLI. Во всех случаях опция "-dns-server xxxx,xxxx" без кавычек. В интерфейсе ADB нет возможности постоянно связывать эту опцию с вашим виртуальным устройством.
Удалить существующий и воссоздать эмулятор. На машине (windows/mac) должен быть доступ в интернет, а эмулятор Android получает доступ в интернет по умолчанию.
Если у кого-то есть разрешение на доступ к Интернету в AndroidManifest и у него все еще есть проблема с подключением к Интернету, возможно, это будет полезно: Android - Исправление проблемы отсутствия подключения к Интернету в эмуляторе.
Я следовал за шагами с этого сайта, и у меня все работает. Самое важное:
- Настройка прокси-сервера на эмуляторе
- Неверный DNS, используемый эмулятором
Это мой первый пост, поэтому я надеюсь, что он будет полезен.
С другой стороны, мне пришлось создать виртуальное устройство без поддержки GSM-модема, чтобы интернет на моем эмуляторе работал.
Я видел различные предложения о том, как код может узнать, работает ли он на эмуляторе, но ни один из них не является вполне удовлетворительным или "ориентированным на будущее". В настоящее время я остановился на считывании идентификатора устройства, который является нулем для эмулятора:
TelephonyManager telmgr = (TelephonyManager) getSystemService (Context.TELEPHONY_SERVICE); логический isEmulator = "000000000000000".equals(telmgr.getDeviceId());
Но в развернутом приложении, которое требует разрешения READ_PHONE_STATE
Вы можете сделать это с помощью AVD Manager, выбрать Сервис -> Параметры. Установите прокси-сервер HTTP на 8.8.8.8,8.8.4.4
Эмулятор будет подключен.