#android-emulator
#android-эмулятор
Вопрос:
При работе с моим приложением, требующим доступа к сети…
Сетевое подключение эмулятора Android 2.2 перестает работать…
Сеть работала должным образом, но через некоторое время она не отвечала на эмуляторе,
пока в моей системе работал f9…
Я перепроверил сетевые подключения и перезапустил с помощью эмулятора (даже создал новый avd). Но проблема остается той же, моя сеть не работает на эмуляторе..
Я также проверил соединение с помощью клавиши F8 на эмуляторе…
Сетевое разрешение в манифесте моего приложения включено….
Ответ №1:
Наконец, в конце концов, я сам нашел решение проблемы:
Это очень распространенная проблема, с которой, должно быть, сталкивалось большинство разработчиков Android….
Недавно, разрабатывая приложение для Android, я столкнулся с ситуацией, из-за которой потратил впустую 2 часа своего времени. Проблема была проста, моему приложению не удалось получить доступ к Интернету из эмулятора Android.
Изначально я думал, что решение проблемы должно было быть простым, но жизнь не всегда так проста.
Итак, в чем была реальная проблема, из-за которой мое приложение не смогло получить доступ к Интернету? Существует несколько причин, из-за которых может возникнуть эта проблема. Поэтому я решил задокументировать свои выводы, чтобы другие могли извлечь из этого пользу.
Есть два основных симптома отсутствия подключения к Интернету в эмуляторе Android….. ** Только ваше приложение не может получить доступ к Интернету ** Ни одно из приложений не может получить доступ к Интернету, Давайте посмотрим, каковы причины, стоящие за каждым из них.
Только ваше приложение не может получить доступ к Интернету
Если только ваше приложение не может получить доступ к Интернету в эмуляторе, проверьте, могут ли какие-либо другие приложения получить доступ к Интернету или нет. Например, вы могли бы открыть приложение браузера, посетивhttp://news.google.com /. Если страница открывается правильно, то проблема заключается в самом вашем приложении, и ее легко исправить.
В принципе, вашему приложению требуется разрешение на доступ в Интернет. Это можно сделать, добавив следующую строку непосредственно перед концом тега в AndroidManifest.xml файл вашего приложения.
Скомпилируйте и переустановите приложение в эмуляторе и попробуйте получить доступ к Интернету из своего приложения. Это должно сработать!
Для чего нужен тег uses-permission:
Приложение Android может запрашивать определенные разрешения, чтобы они могли функционировать должным образом. Вот некоторые примеры разрешений: получить местоположение пользователя, совершить звонок, получить доступ к Интернету и т.д. Приложение должно явно указать это в AndroidManifest.xml .
Когда конечные пользователи устанавливают такое приложение на свое устройство, ОС Android уведомляет пользователя о том, что приложение запрашивает определенные разрешения. Если пользователей это устраивает, то будет установлено только приложение. В противном случае пользователи могут отказать в разрешении, и приложение не будет установлено.
Этот механизм является способом Android для обеспечения безопасности и конфиденциальности пользователей!
Это более сложная ситуация: ни одно из приложений не может получить доступ к Интернету
Теперь эта ситуация сложная. Есть две причины, из-за которых это могло произойти Прокси-сервер не настроен на эмуляторе Неправильный DNS, используемый эмулятором
Настройка DNS-сервера: emulator.exe -avd ‘android1.6’ -dns-сервер 8.8.8.8
Android1.6 — это ваше имя avd, я создал avd с именем android1.6
Поэтому просто замените android1.6 на ваше имя avd.
Запустите этот код в командной строке после указания пути к инструментам и инструментам платформы вашего Android sdk
Комментарии:
1. Я много боролся .. и затем, наконец, получил решение после детального изучения. Итак, публикуем решение